Class DefaultModelBuildingRequest

  • All Implemented Interfaces:
    ModelBuildingRequest

    public class DefaultModelBuildingRequest
    extends java.lang.Object
    implements ModelBuildingRequest
    Collects settings that control building of effective models.
    • Field Detail

      • rawModel

        private Model rawModel
      • pomFile

        private java.io.File pomFile
      • validationLevel

        private int validationLevel
      • processPlugins

        private boolean processPlugins
      • twoPhaseBuilding

        private boolean twoPhaseBuilding
      • locationTracking

        private boolean locationTracking
      • profiles

        private java.util.List<Profile> profiles
      • activeProfileIds

        private java.util.List<java.lang.String> activeProfileIds
      • inactiveProfileIds

        private java.util.List<java.lang.String> inactiveProfileIds
      • systemProperties

        private java.util.Properties systemProperties
      • userProperties

        private java.util.Properties userProperties
      • buildStartTime

        private java.util.Date buildStartTime
    • Constructor Detail

      • DefaultModelBuildingRequest

        public DefaultModelBuildingRequest()
        Creates an empty request.
      • DefaultModelBuildingRequest

        public DefaultModelBuildingRequest​(ModelBuildingRequest request)
        Creates a shallow copy of the specified request.
        Parameters:
        request - The request to copy, must not be null.
    • Method Detail

      • getPomFile

        public java.io.File getPomFile()
        Description copied from interface: ModelBuildingRequest
        Gets the POM file of the project to build.
        Specified by:
        getPomFile in interface ModelBuildingRequest
        Returns:
        The POM file of the project or null if not applicable (i.e. when processing a POM from the repository).
      • setPomFile

        public DefaultModelBuildingRequest setPomFile​(java.io.File pomFile)
        Description copied from interface: ModelBuildingRequest
        Sets the POM file of the project to build. Note that providing the path to a POM file via this method will make the model builder operate in project mode. This mode is meant for effective models that are employed during the build process of a local project. Hence the effective model will support the notion of a project directory. To build the model for a POM from the repository, use ModelBuildingRequest.setModelSource(ModelSource) in combination with a FileModelSource instead.
        Specified by:
        setPomFile in interface ModelBuildingRequest
        Parameters:
        pomFile - The POM file of the project to build the effective model for, may be null to build the model of some POM from the repository.
        Returns:
        This request, never null.
      • getValidationLevel

        public int getValidationLevel()
        Description copied from interface: ModelBuildingRequest
        Gets the level of validation to perform on processed models.
        Specified by:
        getValidationLevel in interface ModelBuildingRequest
        Returns:
        The level of validation to perform on processed models.
      • isProcessPlugins

        public boolean isProcessPlugins()
        Description copied from interface: ModelBuildingRequest
        Indicates whether plugin executions and configurations should be processed. If enabled, lifecycle-induced plugin executions will be injected into the model and common plugin configuration will be propagated to individual executions.
        Specified by:
        isProcessPlugins in interface ModelBuildingRequest
        Returns:
        true if plugins should be processed, false otherwise.
      • isTwoPhaseBuilding

        public boolean isTwoPhaseBuilding()
        Description copied from interface: ModelBuildingRequest
        Indicates whether the model building should happen in two phases. If enabled, the initial invocation of the model builder will only produce an interim result which may be used to analyze inter-model dependencies before the final invocation of the model builder is performed.
        Specified by:
        isTwoPhaseBuilding in interface ModelBuildingRequest
        Returns:
        true if two-phase building is enabled, false if the model should be build in a single step.
      • setTwoPhaseBuilding

        public DefaultModelBuildingRequest setTwoPhaseBuilding​(boolean twoPhaseBuilding)
        Description copied from interface: ModelBuildingRequest
        Enables/disables two-phase building. If enabled, the initial invocation of the model builder will only produce an interim result which may be used to analyze inter-model dependencies before the final invocation of the model builder is performed.
        Specified by:
        setTwoPhaseBuilding in interface ModelBuildingRequest
        Parameters:
        twoPhaseBuilding - true to enable two-phase building, false if the model should be build in a single step.
        Returns:
        This request, never null.
      • isLocationTracking

        public boolean isLocationTracking()
        Description copied from interface: ModelBuildingRequest
        Indicates whether the model should track the line/column number of the model source from which it was parsed.
        Specified by:
        isLocationTracking in interface ModelBuildingRequest
        Returns:
        true if location tracking is enabled, false otherwise.
      • setLocationTracking

        public DefaultModelBuildingRequest setLocationTracking​(boolean locationTracking)
        Description copied from interface: ModelBuildingRequest
        Enables/disables the tracking of line/column numbers for the model source being parsed. By default, input locations are not tracked.
        Specified by:
        setLocationTracking in interface ModelBuildingRequest
        Parameters:
        locationTracking - true to enable location tracking, false to disable it.
        Returns:
        This request, never null.
      • getProfiles

        public java.util.List<Profile> getProfiles()
        Description copied from interface: ModelBuildingRequest
        Gets the external profiles that should be considered for model building.
        Specified by:
        getProfiles in interface ModelBuildingRequest
        Returns:
        The external profiles that should be considered for model building, never null.
      • setProfiles

        public DefaultModelBuildingRequest setProfiles​(java.util.List<Profile> profiles)
        Description copied from interface: ModelBuildingRequest
        Sets the external profiles that should be considered for model building.
        Specified by:
        setProfiles in interface ModelBuildingRequest
        Parameters:
        profiles - The external profiles that should be considered for model building, may be null.
        Returns:
        This request, never null.
      • getActiveProfileIds

        public java.util.List<java.lang.String> getActiveProfileIds()
        Description copied from interface: ModelBuildingRequest
        Gets the identifiers of those profiles that should be activated by explicit demand.
        Specified by:
        getActiveProfileIds in interface ModelBuildingRequest
        Returns:
        The identifiers of those profiles to activate, never null.
      • setActiveProfileIds

        public DefaultModelBuildingRequest setActiveProfileIds​(java.util.List<java.lang.String> activeProfileIds)
        Description copied from interface: ModelBuildingRequest
        Sets the identifiers of those profiles that should be activated by explicit demand.
        Specified by:
        setActiveProfileIds in interface ModelBuildingRequest
        Parameters:
        activeProfileIds - The identifiers of those profiles to activate, may be null.
        Returns:
        This request, never null.
      • getInactiveProfileIds

        public java.util.List<java.lang.String> getInactiveProfileIds()
        Description copied from interface: ModelBuildingRequest
        Gets the identifiers of those profiles that should be deactivated by explicit demand.
        Specified by:
        getInactiveProfileIds in interface ModelBuildingRequest
        Returns:
        The identifiers of those profiles to deactivate, never null.
      • setInactiveProfileIds

        public DefaultModelBuildingRequest setInactiveProfileIds​(java.util.List<java.lang.String> inactiveProfileIds)
        Description copied from interface: ModelBuildingRequest
        Sets the identifiers of those profiles that should be deactivated by explicit demand.
        Specified by:
        setInactiveProfileIds in interface ModelBuildingRequest
        Parameters:
        inactiveProfileIds - The identifiers of those profiles to deactivate, may be null.
        Returns:
        This request, never null.
      • getSystemProperties

        public java.util.Properties getSystemProperties()
        Description copied from interface: ModelBuildingRequest
        Gets the system properties to use for interpolation and profile activation. The system properties are collected from the runtime environment like System.getProperties() and environment variables.
        Specified by:
        getSystemProperties in interface ModelBuildingRequest
        Returns:
        The system properties, never null.
      • setSystemProperties

        public DefaultModelBuildingRequest setSystemProperties​(java.util.Properties systemProperties)
        Description copied from interface: ModelBuildingRequest
        Sets the system properties to use for interpolation and profile activation. The system properties are collected from the runtime environment like System.getProperties() and environment variables.
        Specified by:
        setSystemProperties in interface ModelBuildingRequest
        Parameters:
        systemProperties - The system properties, may be null.
        Returns:
        This request, never null.
      • getUserProperties

        public java.util.Properties getUserProperties()
        Description copied from interface: ModelBuildingRequest
        Gets the user properties to use for interpolation and profile activation. The user properties have been configured directly by the user on his discretion, e.g. via the -Dkey=value parameter on the command line.
        Specified by:
        getUserProperties in interface ModelBuildingRequest
        Returns:
        The user properties, never null.
      • setUserProperties

        public DefaultModelBuildingRequest setUserProperties​(java.util.Properties userProperties)
        Description copied from interface: ModelBuildingRequest
        Sets the user properties to use for interpolation and profile activation. The user properties have been configured directly by the user on his discretion, e.g. via the -Dkey=value parameter on the command line.
        Specified by:
        setUserProperties in interface ModelBuildingRequest
        Parameters:
        userProperties - The user properties, may be null.
        Returns:
        This request, never null.
      • getModelResolver

        public ModelResolver getModelResolver()
        Description copied from interface: ModelBuildingRequest
        Gets the model resolver to use for resolution of mixins or parents that are not locally reachable from the project directory.
        Specified by:
        getModelResolver in interface ModelBuildingRequest
        Returns:
        The model resolver or null if not set.
      • getRawModel

        public Model getRawModel()
        Description copied from interface: ModelBuildingRequest
        Gets the raw model to build. If not set, model source will be used to load raw model.
        Specified by:
        getRawModel in interface ModelBuildingRequest
        Returns:
        The raw model to build or null if not set.