Class MojoDescriptor

  • All Implemented Interfaces:
    Cloneable

    public class MojoDescriptor
    extends org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
    implements Cloneable
    The bean containing the Mojo descriptor.
    For more information about the usage tag, have a look to: https://maven.apache.org/developers/mojo-api-specification.html TODO is there a need for the delegation of MavenMojoDescriptor to this? Why not just extend ComponentDescriptor here?
    • Constructor Detail

      • MojoDescriptor

        public MojoDescriptor()
        Default constructor.
    • Method Detail

      • getLanguage

        public String getLanguage()
        Returns:
        the language of this Mojo, i.e. java
      • setLanguage

        public void setLanguage​(String language)
        Parameters:
        language - the new language
      • getDeprecated

        public String getDeprecated()
        Returns:
        Description with reason of a Mojo deprecation.
      • setDeprecated

        public void setDeprecated​(String deprecated)
        Parameters:
        deprecated - Description with reason of a Mojo deprecation.
      • getParameters

        public List<Parameter> getParameters()
        Returns:
        the list of parameters copy. Any change to returned list is NOT reflected on this instance. To add parameters, use addParameter(Parameter) method.
      • getParameterMap

        public Map<String,​Parameter> getParameterMap()
        Returns:
        the list parameters as a Map (keyed by Parameter.getName()) that is built from parameters list on each call. In other words, the map returned is built on fly and is a copy. Any change to this map is NOT reflected on list and other way around!
      • setDependencyResolutionRequired

        public void setDependencyResolutionRequired​(String requiresDependencyResolution)
        Parameters:
        requiresDependencyResolution - the new required dependencies in a specified scope
      • getDependencyResolutionRequired

        public String getDependencyResolutionRequired()
      • isDependencyResolutionRequired

        @Deprecated
        public String isDependencyResolutionRequired()
        Deprecated.
        Returns:
        the required dependencies in a specified scope TODO the name is not intelligible
      • setDependencyCollectionRequired

        public void setDependencyCollectionRequired​(String requiresDependencyCollection)
        Since:
        3.0-alpha-3
      • getDependencyCollectionRequired

        public String getDependencyCollectionRequired()
        Gets the scope of (transitive) dependencies that should be collected. Dependency collection refers to the process of calculating the complete dependency tree in terms of artifact coordinates. In contrast to dependency resolution, this does not include the download of the files for the dependency artifacts. It is meant for mojos that only want to analyze the set of transitive dependencies, in particular during early lifecycle phases where full dependency resolution might fail due to projects which haven't been built yet.
        Returns:
        The scope of (transitive) dependencies that should be collected or null if none.
        Since:
        3.0-alpha-3
      • setProjectRequired

        public void setProjectRequired​(boolean requiresProject)
        Parameters:
        requiresProject - true if the Mojo needs a Maven project to be executed, false otherwise.
      • isProjectRequired

        public boolean isProjectRequired()
        Returns:
        true if the Mojo needs a Maven project to be executed, false otherwise.
      • setOnlineRequired

        public void setOnlineRequired​(boolean requiresOnline)
        Parameters:
        requiresOnline - true if the Mojo is online, false otherwise.
      • isOnlineRequired

        public boolean isOnlineRequired()
        Returns:
        true if the Mojo is online, false otherwise.
      • requiresOnline

        public boolean requiresOnline()
        Returns:
        true if the Mojo is online, false otherwise.
      • getPhase

        public String getPhase()
        Returns:
        the bound phase name of the Mojo
      • setPhase

        public void setPhase​(String phase)
        Parameters:
        phase - the new bound phase name of the Mojo
      • getSince

        public String getSince()
        Returns:
        the version when the Mojo was added to the API
      • setSince

        public void setSince​(String since)
        Parameters:
        since - the new version when the Mojo was added to the API
      • getGoal

        public String getGoal()
        Returns:
        The goal name of the Mojo
      • setGoal

        public void setGoal​(String goal)
        Parameters:
        goal - The new goal name of the Mojo
      • getExecutePhase

        public String getExecutePhase()
        Returns:
        the invocation phase of the Mojo
      • setExecutePhase

        public void setExecutePhase​(String executePhase)
        Parameters:
        executePhase - the new invocation phase of the Mojo
      • alwaysExecute

        public boolean alwaysExecute()
        Returns:
        true if the Mojo uses always for the executionStrategy
      • getExecutionStrategy

        public String getExecutionStrategy()
        Returns:
        the execution strategy
      • setExecutionStrategy

        public void setExecutionStrategy​(String executionStrategy)
        Parameters:
        executionStrategy - the new execution strategy
      • getMojoConfiguration

        public org.codehaus.plexus.configuration.PlexusConfiguration getMojoConfiguration()
        Returns:
        the mojo configuration
      • setMojoConfiguration

        public void setMojoConfiguration​(org.codehaus.plexus.configuration.PlexusConfiguration mojoConfiguration)
        Parameters:
        mojoConfiguration - a new mojo configuration
      • getRole

        public String getRole()
        Overrides:
        getRole in class org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
      • getRoleHint

        public String getRoleHint()
        Overrides:
        getRoleHint in class org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
      • getId

        public String getId()
        Returns:
        the id of the mojo, based on the goal name
      • getComponentType

        public String getComponentType()
        Overrides:
        getComponentType in class org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
      • getPluginDescriptor

        public PluginDescriptor getPluginDescriptor()
        Returns:
        the plugin descriptor
      • setPluginDescriptor

        public void setPluginDescriptor​(PluginDescriptor pluginDescriptor)
        Parameters:
        pluginDescriptor - the new plugin descriptor
      • isInheritedByDefault

        public boolean isInheritedByDefault()
        Returns:
        true if the Mojo is inherited, false otherwise.
      • setInheritedByDefault

        public void setInheritedByDefault​(boolean inheritedByDefault)
        Parameters:
        inheritedByDefault - true if the Mojo is inherited, false otherwise.
      • equals

        public boolean equals​(Object object)
        Overrides:
        equals in class org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class org.codehaus.plexus.component.repository.ComponentDescriptor<Mojo>
      • getExecuteLifecycle

        public String getExecuteLifecycle()
        Returns:
        the invocation lifecycle of the Mojo
      • setExecuteLifecycle

        public void setExecuteLifecycle​(String executeLifecycle)
        Parameters:
        executeLifecycle - the new invocation lifecycle of the Mojo
      • setAggregator

        public void setAggregator​(boolean aggregator)
        Parameters:
        aggregator - true if the Mojo uses the Maven project and its child modules, false otherwise.
      • isAggregator

        public boolean isAggregator()
        Returns:
        true if the Mojo uses the Maven project and its child modules, false otherwise.
      • isDirectInvocationOnly

        public boolean isDirectInvocationOnly()
        Returns:
        true if the Mojo cannot be invoked directly, false otherwise.
      • setDirectInvocationOnly

        public void setDirectInvocationOnly​(boolean directInvocationOnly)
        Parameters:
        directInvocationOnly - true if the Mojo cannot be invoked directly, false otherwise.
      • isRequiresReports

        public boolean isRequiresReports()
        Returns:
        true if the Mojo needs reports to run, false otherwise.
      • setRequiresReports

        public void setRequiresReports​(boolean requiresReports)
        Parameters:
        requiresReports - true if the Mojo needs reports to run, false otherwise.
      • setExecuteGoal

        public void setExecuteGoal​(String executeGoal)
        Parameters:
        executeGoal - the new invocation goal of the Mojo
      • getExecuteGoal

        public String getExecuteGoal()
        Returns:
        the invocation goal of the Mojo
      • isThreadSafe

        public boolean isThreadSafe()
        Returns:
        True if the Mojo is thread-safe and can be run safely in parallel
        Since:
        3.0-beta-2
      • setThreadSafe

        public void setThreadSafe​(boolean threadSafe)
        Parameters:
        threadSafe - indicates that the mojo is thread-safe and can be run safely in parallel
        Since:
        3.0-beta-2
      • isForking

        public boolean isForking()
        Returns:
        true if this mojo forks either a goal or the lifecycle, false otherwise.