org.apache.maven.plugin.descriptor

## Class MojoDescriptor

- java.lang.Object
- - ComponentDescriptor
  - - org.apache.maven.plugin.descriptor.MojoDescriptor

- All Implemented Interfaces:
    java.lang.Cloneable

      public class MojoDescriptor
      extends ComponentDescriptor
      implements java.lang.Cloneable

  The bean containing the Mojo descriptor.
  For more information about the usage tag, have a look to: http://maven.apache.org/developers/mojo-api-specification.html
  Version:
    $Id: MojoDescriptor.java 743587 2009-02-12 01:32:50Z jdcasey $

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `MAVEN_PLUGIN` The Plexus component type
    `static java.lang.String` | `MULTI_PASS_EXEC_STRATEGY` "always" execution strategy
    `static java.lang.String` | `SINGLE_PASS_EXEC_STRATEGY` "once-per-session" execution strategy

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MojoDescriptor()` Default constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addParameter(Parameter parameter)`
    `boolean` | `alwaysExecute()`
    `boolean` | `equals(java.lang.Object object)`
    `java.lang.String` | `getComponentType()`
    `java.lang.String` | `getDeprecated()`
    `java.lang.String` | `getExecuteGoal()`
    `java.lang.String` | `getExecuteLifecycle()`
    `java.lang.String` | `getExecutePhase()`
    `java.lang.String` | `getExecutionStrategy()`
    `java.lang.String` | `getFullGoalName()`
    `java.lang.String` | `getGoal()`
    `java.lang.String` | `getId()`
    `java.lang.String` | `getLanguage()`
    `PlexusConfiguration` | `getMojoConfiguration()`
    `java.util.Map` | `getParameterMap()`
    `java.util.List` | `getParameters()`
    `java.lang.String` | `getPhase()`
    `PluginDescriptor` | `getPluginDescriptor()`
    `java.lang.String` | `getRole()`
    `java.lang.String` | `getRoleHint()`
    `java.lang.String` | `getSince()`
    `int` | `hashCode()`
    `boolean` | `isAggregator()`
    `java.lang.String` | `isDependencyResolutionRequired()`
    `boolean` | `isDirectInvocationOnly()`
    `boolean` | `isInheritedByDefault()`
    `boolean` | `isOnlineRequired()`
    `boolean` | `isProjectRequired()`
    `boolean` | `isRequiresReports()`
    `boolean` | `requiresOnline()`
    `void` | `setAggregator(boolean aggregator)`
    `void` | `setDependencyResolutionRequired(java.lang.String requiresDependencyResolution)`
    `void` | `setDeprecated(java.lang.String deprecated)`
    `void` | `setDirectInvocationOnly(boolean directInvocationOnly)`
    `void` | `setExecuteGoal(java.lang.String executeGoal)`
    `void` | `setExecuteLifecycle(java.lang.String executeLifecycle)`
    `void` | `setExecutePhase(java.lang.String executePhase)`
    `void` | `setExecutionStrategy(java.lang.String executionStrategy)`
    `void` | `setGoal(java.lang.String goal)`
    `void` | `setInheritedByDefault(boolean inheritedByDefault)`
    `void` | `setLanguage(java.lang.String language)`
    `void` | `setMojoConfiguration(PlexusConfiguration mojoConfiguration)`
    `void` | `setOnlineRequired(boolean requiresOnline)`
    `void` | `setParameters(java.util.List parameters)`
    `void` | `setPhase(java.lang.String phase)`
    `void` | `setPluginDescriptor(PluginDescriptor pluginDescriptor)`
    `void` | `setProjectRequired(boolean requiresProject)`
    `void` | `setRequiresReports(boolean requiresReports)`
    `void` | `setSince(java.lang.String since)`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### MAVEN_PLUGIN

          public static java.lang.String MAVEN_PLUGIN

      The Plexus component type

    - #### SINGLE_PASS_EXEC_STRATEGY

          public static final java.lang.String SINGLE_PASS_EXEC_STRATEGY

      "once-per-session" execution strategy
      See Also:
        Constant Field Values

    - #### MULTI_PASS_EXEC_STRATEGY

          public static final java.lang.String MULTI_PASS_EXEC_STRATEGY

      "always" execution strategy
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### MojoDescriptor

          public MojoDescriptor()

      Default constructor.

  - ### Method Detail

    - #### getLanguage

          public java.lang.String getLanguage()

      Returns:
        the language of this Mojo, i.e. `java`

    - #### setLanguage

          public void setLanguage(java.lang.String language)

      Parameters:
        `language` - the new language

    - #### getDeprecated

          public java.lang.String getDeprecated()

      Returns:
        `true` if the Mojo is deprecated, `false` otherwise.

    - #### setDeprecated

          public void setDeprecated(java.lang.String deprecated)

      Parameters:
        `deprecated` - `true` to deprecate the Mojo, `false` otherwise.

    - #### getParameters

          public java.util.List getParameters()

      Returns:
        the list of parameters

    - #### setParameters

          public void setParameters(java.util.List parameters)
                             throws DuplicateParameterException

      Parameters:
        `parameters` - the new list of parameters
      Throws:
        `DuplicateParameterException` - if any

    - #### addParameter

          public void addParameter(Parameter parameter)
                            throws DuplicateParameterException

      Parameters:
        `parameter` - add a new parameter
      Throws:
        `DuplicateParameterException` - if any

    - #### getParameterMap

          public java.util.Map getParameterMap()

      Returns:
        the list parameters as a Map

    - #### setDependencyResolutionRequired

          public void setDependencyResolutionRequired(java.lang.String requiresDependencyResolution)

      Parameters:
        `requiresDependencyResolution` - the new required dependencies in a specified scope

    - #### isDependencyResolutionRequired

          public java.lang.String isDependencyResolutionRequired()

      Returns:
        the required dependencies in a specified scope

    - #### 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 java.lang.String getPhase()

      Returns:
        the binded phase name of the Mojo

    - #### setPhase

          public void setPhase(java.lang.String phase)

      Parameters:
        `phase` - the new binded phase name of the Mojo

    - #### getSince

          public java.lang.String getSince()

      Returns:
        the version when the Mojo was added to the API

    - #### setSince

          public void setSince(java.lang.String since)

      Parameters:
        `since` - the new version when the Mojo was added to the API

    - #### getGoal

          public java.lang.String getGoal()

      Returns:
        The goal name of the Mojo

    - #### setGoal

          public void setGoal(java.lang.String goal)

      Parameters:
        `goal` - The new goal name of the Mojo

    - #### getExecutePhase

          public java.lang.String getExecutePhase()

      Returns:
        the invocation phase of the Mojo

    - #### setExecutePhase

          public void setExecutePhase(java.lang.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 java.lang.String getExecutionStrategy()

      Returns:
        the execution strategy

    - #### setExecutionStrategy

          public void setExecutionStrategy(java.lang.String executionStrategy)

      Parameters:
        `executionStrategy` - the new execution strategy

    - #### getMojoConfiguration

          public PlexusConfiguration getMojoConfiguration()

      Returns:
        the mojo configuration

    - #### setMojoConfiguration

          public void setMojoConfiguration(PlexusConfiguration mojoConfiguration)

      Parameters:
        `mojoConfiguration` - a new mojo configuration

    - #### getRole

          public java.lang.String getRole()

    - #### getRoleHint

          public java.lang.String getRoleHint()

    - #### getId

          public java.lang.String getId()

      Returns:
        the id of the mojo, based on the goal name

    - #### getFullGoalName

          public java.lang.String getFullGoalName()

      Returns:
        the full goal name
      See Also:
        `PluginDescriptor.getGoalPrefix()`, `getGoal()`

    - #### getComponentType

          public java.lang.String getComponentType()

    - #### 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 herited, `false` otherwise.

    - #### setInheritedByDefault

          public void setInheritedByDefault(boolean inheritedByDefault)

      Parameters:
        `inheritedByDefault` - `true` if the Mojo is herited, `false` otherwise.

    - #### equals

          public boolean equals(java.lang.Object object)

    - #### hashCode

          public int hashCode()

    - #### getExecuteLifecycle

          public java.lang.String getExecuteLifecycle()

      Returns:
        the invocation lifecycle of the Mojo

    - #### setExecuteLifecycle

          public void setExecuteLifecycle(java.lang.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 could not be invoke directly, `false` otherwise.

    - #### setDirectInvocationOnly

          public void setDirectInvocationOnly(boolean directInvocationOnly)

      Parameters:
        `directInvocationOnly` - `true` if the Mojo could not be invoke 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(java.lang.String executeGoal)

      Parameters:
        `executeGoal` - the new invocation goal of the Mojo

    - #### getExecuteGoal

          public java.lang.String getExecuteGoal()

      Returns:
        the invocation goal of the Mojo