You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2012/06/24 10:36:59 UTC
svn commit: r1353231 - in /maven/plugin-tools/trunk:
maven-plugin-plugin/src/it/java-basic-annotations/
maven-plugin-plugin/src/it/java-basic/
maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/
maven-plugin-tools-ja...
Author: hboutemy
Date: Sun Jun 24 08:36:58 2012
New Revision: 1353231
URL: http://svn.apache.org/viewvc?rev=1353231&view=rev
Log:
[MPLUGIN-214] fixed description generated by Maven objects marked as component (required=true and no implementation, and since+deprecated for tags)
Modified:
maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic-annotations/verify.groovy
maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic/verify.groovy
maven/plugin-tools/trunk/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java
maven/plugin-tools/trunk/maven-plugin-tools-java/src/main/java/org/apache/maven/tools/plugin/extractor/java/JavaMojoDescriptorExtractor.java
Modified: maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic-annotations/verify.groovy
URL: http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic-annotations/verify.groovy?rev=1353231&r1=1353230&r2=1353231&view=diff
==============================================================================
--- maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic-annotations/verify.groovy (original)
+++ maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic-annotations/verify.groovy Sun Jun 24 08:36:58 2012
@@ -83,7 +83,7 @@ assert parameter.name.text() == 'mojo'
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.plugin.MojoExecution'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -92,7 +92,7 @@ assert parameter.name.text() == 'plugin'
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -101,7 +101,7 @@ assert parameter.name.text() == 'project
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.project.MavenProject'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -110,7 +110,7 @@ assert parameter.name.text() == 'session
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.execution.MavenSession'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -119,7 +119,7 @@ assert parameter.name.text() == 'setting
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.settings.Settings'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
Modified: maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic/verify.groovy
URL: http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic/verify.groovy?rev=1353231&r1=1353230&r2=1353231&view=diff
==============================================================================
--- maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic/verify.groovy (original)
+++ maven/plugin-tools/trunk/maven-plugin-plugin/src/it/java-basic/verify.groovy Sun Jun 24 08:36:58 2012
@@ -83,7 +83,7 @@ assert parameter.name.text() == 'mojo'
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.plugin.MojoExecution'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -92,7 +92,7 @@ assert parameter.name.text() == 'plugin'
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -101,7 +101,7 @@ assert parameter.name.text() == 'project
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.project.MavenProject'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -110,7 +110,7 @@ assert parameter.name.text() == 'session
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.execution.MavenSession'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
@@ -119,7 +119,7 @@ assert parameter.name.text() == 'setting
assert parameter.alias.isEmpty()
assert parameter.type.text() == 'org.apache.maven.settings.Settings'
assert parameter.deprecated.isEmpty()
-assert parameter.required.text() == 'false'
+assert parameter.required.text() == 'true'
assert parameter.editable.text() == 'false'
assert parameter.description.text() == ''
Modified: maven/plugin-tools/trunk/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java
URL: http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java?rev=1353231&r1=1353230&r2=1353231&view=diff
==============================================================================
--- maven/plugin-tools/trunk/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java (original)
+++ maven/plugin-tools/trunk/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java Sun Jun 24 08:36:58 2012
@@ -534,6 +534,7 @@ public class JavaAnnotationsMojoDescript
mojoDescriptor.setPhase( mojo.defaultPhase().id() );
+ // Parameter annotations
Map<String, ParameterAnnotationContent> parameters =
getParametersParentHierarchy( mojoAnnotatedClass, new HashMap<String, ParameterAnnotationContent>(),
mojoAnnotatedClasses );
@@ -565,6 +566,7 @@ public class JavaAnnotationsMojoDescript
mojoDescriptor.addParameter( parameter );
}
+ // Component annotations
Map<String, ComponentAnnotationContent> components =
getComponentsParentHierarchy( mojoAnnotatedClass, new HashMap<String, ComponentAnnotationContent>(),
mojoAnnotatedClasses );
@@ -576,17 +578,20 @@ public class JavaAnnotationsMojoDescript
new org.apache.maven.plugin.descriptor.Parameter();
parameter.setName( componentAnnotationContent.getFieldName() );
+ // recognize Maven-injected objects as components annotations instead of parameters
String expression = PluginUtils.MAVEN_COMPONENTS.get( componentAnnotationContent.getRoleClassName() );
if ( expression == null )
{
+ // normal component
parameter.setRequirement( new Requirement( componentAnnotationContent.getRoleClassName(),
componentAnnotationContent.hint() ) );
}
else
{
+ // not a component but a Maven object to be transformed into an expression/property
parameter.setDefaultValue( expression );
- parameter.setImplementation( componentAnnotationContent.getRoleClassName() );
parameter.setType( componentAnnotationContent.getRoleClassName() );
+ parameter.setRequired( true );
}
parameter.setDeprecated( componentAnnotationContent.getDeprecated() );
parameter.setSince( componentAnnotationContent.getSince() );
@@ -594,6 +599,7 @@ public class JavaAnnotationsMojoDescript
// same behaviour as JavaMojoDescriptorExtractor
//parameter.setRequired( ... );
parameter.setEditable( false );
+
mojoDescriptor.addParameter( parameter );
}
Modified: maven/plugin-tools/trunk/maven-plugin-tools-java/src/main/java/org/apache/maven/tools/plugin/extractor/java/JavaMojoDescriptorExtractor.java
URL: http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-tools-java/src/main/java/org/apache/maven/tools/plugin/extractor/java/JavaMojoDescriptorExtractor.java?rev=1353231&r1=1353230&r2=1353231&view=diff
==============================================================================
--- maven/plugin-tools/trunk/maven-plugin-tools-java/src/main/java/org/apache/maven/tools/plugin/extractor/java/JavaMojoDescriptorExtractor.java (original)
+++ maven/plugin-tools/trunk/maven-plugin-tools-java/src/main/java/org/apache/maven/tools/plugin/extractor/java/JavaMojoDescriptorExtractor.java Sun Jun 24 08:36:58 2012
@@ -496,10 +496,24 @@ public class JavaMojoDescriptorExtractor
pd.setDescription( field.getComment() );
+ DocletTag deprecationTag = field.getTagByName( JavaMojoAnnotation.DEPRECATED );
+
+ if ( deprecationTag != null )
+ {
+ pd.setDeprecated( deprecationTag.getValue() );
+ }
+
+ DocletTag sinceTag = field.getTagByName( JavaMojoAnnotation.SINCE );
+ if ( sinceTag != null )
+ {
+ pd.setSince( sinceTag.getValue() );
+ }
+
DocletTag componentTag = field.getTagByName( JavaMojoAnnotation.COMPONENT );
if ( componentTag != null )
{
+ // Component tag
String role = componentTag.getNamedParameter( JavaMojoAnnotation.COMPONENT_ROLE );
if ( role == null )
@@ -515,17 +529,20 @@ public class JavaMojoDescriptorExtractor
roleHint = componentTag.getNamedParameter( "role-hint" );
}
+ // recognize Maven-injected objects as components annotations instead of parameters
String expression = PluginUtils.MAVEN_COMPONENTS.get( role );
if ( expression == null )
{
+ // normal component
pd.setRequirement( new Requirement( role, roleHint ) );
}
else
{
+ // not a component but a Maven object to be transformed into an expression/property
pd.setDefaultValue( expression );
- pd.setImplementation( role );
pd.setType( role );
+ pd.setRequired( true );
}
pd.setEditable( false );
@@ -535,25 +552,13 @@ public class JavaMojoDescriptorExtractor
}
else
{
+ // Parameter tag
DocletTag parameter = field.getTagByName( JavaMojoAnnotation.PARAMETER );
pd.setRequired( field.getTagByName( JavaMojoAnnotation.REQUIRED ) != null );
pd.setEditable( field.getTagByName( JavaMojoAnnotation.READONLY ) == null );
- DocletTag deprecationTag = field.getTagByName( JavaMojoAnnotation.DEPRECATED );
-
- if ( deprecationTag != null )
- {
- pd.setDeprecated( deprecationTag.getValue() );
- }
-
- DocletTag sinceTag = field.getTagByName( JavaMojoAnnotation.SINCE );
- if ( sinceTag != null )
- {
- pd.setSince( sinceTag.getValue() );
- }
-
String alias = parameter.getNamedParameter( JavaMojoAnnotation.PARAMETER_ALIAS );
if ( !StringUtils.isEmpty( alias ) )