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
`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
`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