aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java')
-rw-r--r--framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java408
1 files changed, 408 insertions, 0 deletions
diff --git a/framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java b/framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
new file mode 100644
index 00000000..8b4a01b3
--- /dev/null
+++ b/framework/src/maven/apache-maven-3.3.3/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
@@ -0,0 +1,408 @@
+package org.apache.maven.model.building;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Properties;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Profile;
+import org.apache.maven.model.resolution.ModelResolver;
+import org.apache.maven.model.resolution.WorkspaceModelResolver;
+
+/**
+ * Collects settings that control building of effective models.
+ *
+ * @author Benjamin Bentmann
+ */
+public class DefaultModelBuildingRequest
+ implements ModelBuildingRequest
+{
+
+ private Model rawModel;
+
+ private File pomFile;
+
+ private ModelSource modelSource;
+
+ private int validationLevel = VALIDATION_LEVEL_STRICT;
+
+ private boolean processPlugins;
+
+ private boolean twoPhaseBuilding;
+
+ private boolean locationTracking;
+
+ private List<Profile> profiles;
+
+ private List<String> activeProfileIds;
+
+ private List<String> inactiveProfileIds;
+
+ private Properties systemProperties;
+
+ private Properties userProperties;
+
+ private Date buildStartTime;
+
+ private ModelResolver modelResolver;
+
+ private ModelBuildingListener modelBuildingListener;
+
+ private ModelCache modelCache;
+
+ private WorkspaceModelResolver workspaceResolver;
+
+ /**
+ * Creates an empty request.
+ */
+ public DefaultModelBuildingRequest()
+ {
+ }
+
+ /**
+ * Creates a shallow copy of the specified request.
+ *
+ * @param request The request to copy, must not be {@code null}.
+ */
+ public DefaultModelBuildingRequest( ModelBuildingRequest request )
+ {
+ setPomFile( request.getPomFile() );
+ setModelSource( request.getModelSource() );
+ setValidationLevel( request.getValidationLevel() );
+ setProcessPlugins( request.isProcessPlugins() );
+ setTwoPhaseBuilding( request.isTwoPhaseBuilding() );
+ setProfiles( request.getProfiles() );
+ setActiveProfileIds( request.getActiveProfileIds() );
+ setInactiveProfileIds( request.getInactiveProfileIds() );
+ setSystemProperties( request.getSystemProperties() );
+ setUserProperties( request.getUserProperties() );
+ setBuildStartTime( request.getBuildStartTime() );
+ setModelResolver( request.getModelResolver() );
+ setModelBuildingListener( request.getModelBuildingListener() );
+ setModelCache( request.getModelCache() );
+ }
+
+ @Override
+ public File getPomFile()
+ {
+ return pomFile;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setPomFile( File pomFile )
+ {
+ this.pomFile = ( pomFile != null ) ? pomFile.getAbsoluteFile() : null;
+
+ return this;
+ }
+
+ @Override
+ public synchronized ModelSource getModelSource()
+ {
+ if ( modelSource == null && pomFile != null )
+ {
+ modelSource = new FileModelSource( pomFile );
+ }
+ return modelSource;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setModelSource( ModelSource modelSource )
+ {
+ this.modelSource = modelSource;
+
+ return this;
+ }
+
+ @Override
+ public int getValidationLevel()
+ {
+ return validationLevel;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setValidationLevel( int validationLevel )
+ {
+ this.validationLevel = validationLevel;
+
+ return this;
+ }
+
+ @Override
+ public boolean isProcessPlugins()
+ {
+ return processPlugins;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setProcessPlugins( boolean processPlugins )
+ {
+ this.processPlugins = processPlugins;
+
+ return this;
+ }
+
+ @Override
+ public boolean isTwoPhaseBuilding()
+ {
+ return twoPhaseBuilding;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setTwoPhaseBuilding( boolean twoPhaseBuilding )
+ {
+ this.twoPhaseBuilding = twoPhaseBuilding;
+
+ return this;
+ }
+
+ @Override
+ public boolean isLocationTracking()
+ {
+ return locationTracking;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setLocationTracking( boolean locationTracking )
+ {
+ this.locationTracking = locationTracking;
+
+ return this;
+ }
+
+ @Override
+ public List<Profile> getProfiles()
+ {
+ if ( profiles == null )
+ {
+ profiles = new ArrayList<Profile>();
+ }
+
+ return profiles;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setProfiles( List<Profile> profiles )
+ {
+ if ( profiles != null )
+ {
+ this.profiles = new ArrayList<Profile>( profiles );
+ }
+ else
+ {
+ this.profiles = null;
+ }
+
+ return this;
+ }
+
+ @Override
+ public List<String> getActiveProfileIds()
+ {
+ if ( activeProfileIds == null )
+ {
+ activeProfileIds = new ArrayList<String>();
+ }
+
+ return activeProfileIds;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setActiveProfileIds( List<String> activeProfileIds )
+ {
+ if ( activeProfileIds != null )
+ {
+ this.activeProfileIds = new ArrayList<String>( activeProfileIds );
+ }
+ else
+ {
+ this.activeProfileIds = null;
+ }
+
+ return this;
+ }
+
+ @Override
+ public List<String> getInactiveProfileIds()
+ {
+ if ( inactiveProfileIds == null )
+ {
+ inactiveProfileIds = new ArrayList<String>();
+ }
+
+ return inactiveProfileIds;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setInactiveProfileIds( List<String> inactiveProfileIds )
+ {
+ if ( inactiveProfileIds != null )
+ {
+ this.inactiveProfileIds = new ArrayList<String>( inactiveProfileIds );
+ }
+ else
+ {
+ this.inactiveProfileIds = null;
+ }
+
+ return this;
+ }
+
+ @Override
+ public Properties getSystemProperties()
+ {
+ if ( systemProperties == null )
+ {
+ systemProperties = new Properties();
+ }
+
+ return systemProperties;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setSystemProperties( Properties systemProperties )
+ {
+ if ( systemProperties != null )
+ {
+ this.systemProperties = new Properties();
+ this.systemProperties.putAll( systemProperties );
+ }
+ else
+ {
+ this.systemProperties = null;
+ }
+
+ return this;
+ }
+
+ @Override
+ public Properties getUserProperties()
+ {
+ if ( userProperties == null )
+ {
+ userProperties = new Properties();
+ }
+
+ return userProperties;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setUserProperties( Properties userProperties )
+ {
+ if ( userProperties != null )
+ {
+ this.userProperties = new Properties();
+ this.userProperties.putAll( userProperties );
+ }
+ else
+ {
+ this.userProperties = null;
+ }
+
+ return this;
+ }
+
+ @Override
+ public Date getBuildStartTime()
+ {
+ return buildStartTime;
+ }
+
+ @Override
+ public ModelBuildingRequest setBuildStartTime( Date buildStartTime )
+ {
+ this.buildStartTime = buildStartTime;
+
+ return this;
+ }
+
+ @Override
+ public ModelResolver getModelResolver()
+ {
+ return this.modelResolver;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setModelResolver( ModelResolver modelResolver )
+ {
+ this.modelResolver = modelResolver;
+
+ return this;
+ }
+
+ @Override
+ public ModelBuildingListener getModelBuildingListener()
+ {
+ return modelBuildingListener;
+ }
+
+ @Override
+ public ModelBuildingRequest setModelBuildingListener( ModelBuildingListener modelBuildingListener )
+ {
+ this.modelBuildingListener = modelBuildingListener;
+
+ return this;
+ }
+
+ @Override
+ public ModelCache getModelCache()
+ {
+ return this.modelCache;
+ }
+
+ @Override
+ public DefaultModelBuildingRequest setModelCache( ModelCache modelCache )
+ {
+ this.modelCache = modelCache;
+
+ return this;
+ }
+
+ @Override
+ public Model getRawModel()
+ {
+ return rawModel;
+ }
+
+ @Override
+ public ModelBuildingRequest setRawModel( Model rawModel )
+ {
+ this.rawModel = rawModel;
+ return this;
+ }
+
+ @Override
+ public WorkspaceModelResolver getWorkspaceModelResolver()
+ {
+ return workspaceResolver;
+ }
+
+ @Override
+ public ModelBuildingRequest setWorkspaceModelResolver( WorkspaceModelResolver workspaceResolver )
+ {
+ this.workspaceResolver = workspaceResolver;
+ return this;
+ }
+
+}