You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by it...@apache.org on 2010/02/02 12:03:12 UTC

svn commit: r905576 - in /incubator/clerezza: issues/CLEREZZA-98/ trunk/org.apache.clerezza.parent/ trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/ trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-...

Author: ito
Date: Tue Feb  2 11:03:11 2010
New Revision: 905576

URL: http://svn.apache.org/viewvc?rev=905576&view=rev
Log:
CLEREZZA-98: moved to default

Added:
    incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/
      - copied from r905560, incubator/clerezza/issues/CLEREZZA-98/org.apache.clerezza.maven-jaxrs-report-plugin/
Removed:
    incubator/clerezza/issues/CLEREZZA-98/
Modified:
    incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/src/main/java/org/apache/clerezza/jaxrsreportplugin/JaxRsReportMojo.java
    incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml

Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/src/main/java/org/apache/clerezza/jaxrsreportplugin/JaxRsReportMojo.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/src/main/java/org/apache/clerezza/jaxrsreportplugin/JaxRsReportMojo.java?rev=905576&r1=905560&r2=905576&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/src/main/java/org/apache/clerezza/jaxrsreportplugin/JaxRsReportMojo.java (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.maven-jaxrs-report-plugin/src/main/java/org/apache/clerezza/jaxrsreportplugin/JaxRsReportMojo.java Tue Feb  2 11:03:11 2010
@@ -54,29 +54,26 @@
 	 * @parameter expression="${basedir}"
 	 */
 	private String baseDir;
-	
-	 /**
-     * Location where generated html will be created.
-     *
-     * @parameter expression="${project.reporting.outputDirectory}"
-     */
-    private String outputDirectory;
-
-    /**
-     * Doxia Site Renderer
-     *
-     * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
-     * @required @readonly
-     */
-    private SiteRenderer siteRenderer;
-
-    /**
-     * Maven Project
-     *
-     * @parameter expression="${project}"
-     * @required @readonly
-     */
-    private MavenProject project;
+	/**
+	 * Location where generated html will be created.
+	 *
+	 * @parameter expression="${project.reporting.outputDirectory}"
+	 */
+	private String outputDirectory;
+	/**
+	 * Doxia Site Renderer
+	 *
+	 * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+	 * @required @readonly
+	 */
+	private SiteRenderer siteRenderer;
+	/**
+	 * Maven Project
+	 *
+	 * @parameter expression="${project}"
+	 * @required @readonly
+	 */
+	private MavenProject project;
 
 	@Override
 	protected SiteRenderer getSiteRenderer() {
@@ -95,8 +92,17 @@
 	}
 
 	@Override
-	protected void executeReport(Locale arg0) throws MavenReportException {
+	protected void executeReport(Locale arg0)
+			throws MavenReportException {
 
+		JavaClass[] classes = getJavaClassesFromSources();
+		boolean pathAnnotationExists = false;
+		for (JavaClass clazz : classes) {
+			if (hasPathAnnotation(clazz)) {
+				pathAnnotationExists = true;
+				break;
+			}
+		}
 		Sink sink = getSink();
 		sink.head();
 		sink.title();
@@ -104,108 +110,120 @@
 		sink.title_();
 		sink.head_();
 		sink.body();
+		if(pathAnnotationExists) {
+			
 
-		JavaClass[] classes =  getJavaClassesFromSources();
-		for(JavaClass clazz : classes) {
-			if(hasPathAnnotation(clazz)) {
-				sink.section1();
-				sink.sectionTitle1();
-				sink.text("Class: " + clazz.getName());
-				sink.sectionTitle1_();
-				sink.lineBreak();
-				sink.text("Package: " + clazz.getPackage().getName());
-				sink.lineBreak();
-				sink.lineBreak();
-				for(Annotation annotation : clazz.getAnnotations()) {
-					if(annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
-						sink.bold();
-						sink.text("Root Resource Path: " + annotation.getNamedParameter("value").toString());
-						sink.bold_();
+			for (JavaClass clazz : classes) {
+				if (hasPathAnnotation(clazz)) {
+					sink.section1();
+					sink.sectionTitle1();
+					sink.text("Class: " + clazz.getName());
+					sink.sectionTitle1_();
+					sink.lineBreak();
+					sink.text("Package: " + clazz.getPackage().getName());
+					sink.lineBreak();
+					sink.lineBreak();
+					for (Annotation annotation : clazz.getAnnotations()) {
+						if (annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
+							sink.bold();
+							sink.text("Root Resource Path: " + annotation.getNamedParameter("value").toString());
+							sink.bold_();
+						}
 					}
-				}
-				sink.lineBreak();
-				sink.lineBreak();
-				sink.paragraph();
-				sink.text(clazz.getComment());
-				sink.paragraph_();
-				sink.section1_();
-				sink.horizontalRule();
-				for(JavaMethod mth  : clazz.getMethods()) {
-					if(hasPathAnnotation(mth)) {
-						sink.section2();
-						sink.sectionTitle2();
-						sink.text("Method: " + mth.getName());
-						sink.sectionTitle2_();
-
-						for(Annotation annotation : mth.getAnnotations()) {
-							if(annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
-								sink.bold();
-								sink.text("Path: " + annotation.getNamedParameter("value"));
-								sink.bold_();
-								sink.lineBreak();
-								sink.lineBreak();
-							}  else if(annotation.getParameterValue().toString().contains("javax.ws.rs.Produces")) {
-								sink.bold();
-								sink.text("Produces: " + annotation.getNamedParameter("value"));
-								sink.bold_();
-								sink.lineBreak();
-								sink.lineBreak();
-							}else if(annotation.getParameterValue().toString().contains("javax.ws.rs")) {
-								sink.bold();
-								sink.text("Http Method: " + annotation.getType().toString().substring("javax.ws.rs.".length()));
-								sink.bold_();
-								sink.lineBreak();
-								sink.lineBreak();
+					sink.lineBreak();
+					sink.lineBreak();
+					sink.paragraph();
+					sink.text(clazz.getComment());
+					sink.paragraph_();
+					sink.section1_();
+					sink.horizontalRule();
+					for (JavaMethod mth : clazz.getMethods()) {
+						if (hasPathAnnotation(mth)) {
+							for (Annotation annotation : mth.getAnnotations()) {
+								if (annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
+									sink.section2();
+									sink.sectionTitle2();
+									sink.text("Path: " + annotation.getNamedParameter("value"));
+									sink.sectionTitle2_();
+								}
 							}
-						}
-						sink.paragraph();
-						sink.text(mth.getComment());
-						sink.paragraph_();
-						DocletTag[] params = mth.getTagsByName("param");
-						if(params != null) {
-							sink.numberedList(params.length);
-							for(DocletTag param : params) {
-								sink.numberedListItem();
-								sink.text("param: " + param.getValue());
-								sink.numberedListItem_();
+							for (Annotation annotation : mth.getAnnotations()) {
+								if (annotation.getParameterValue().toString().contains("javax.ws.rs.Produces")) {
+									sink.bold();
+									sink.text("Produces: " + annotation.getNamedParameter("value"));
+									sink.bold_();
+									sink.lineBreak();
+									sink.lineBreak();
+								} else if (annotation.getParameterValue().toString()
+										.contains("javax.ws.rs") && !annotation.getParameterValue().toString()
+										.contains("javax.ws.rs.Path")) {
+									sink.bold();
+									sink.text("Http Method: " + annotation.getType()
+											.toString().substring("javax.ws.rs.".length()));
+									sink.bold_();
+									sink.lineBreak();
+									sink.lineBreak();
+								}
 							}
-							sink.numberedList_();
-						}
-						DocletTag returns = mth.getTagByName("return");
-						if(returns != null) {
-							sink.text("Returns " + returns.getValue());
+							sink.bold();
+							sink.text("Method: " + mth.getName());
+							sink.bold_();
+							sink.lineBreak();
+							sink.lineBreak();
+							sink.paragraph();
+							sink.text(mth.getComment());
+							sink.paragraph_();
+							DocletTag[] params = mth.getTagsByName("param");
+							if (params != null) {
+								sink.numberedList(params.length);
+								for (DocletTag param : params) {
+									sink.numberedListItem();
+									sink.text("param: " + param.getValue());
+									sink.numberedListItem_();
+								}
+								sink.numberedList_();
+							}
+							DocletTag returns = mth.getTagByName("return");
+							if (returns != null) {
+								sink.text("Returns " + returns.getValue());
+							}
+							sink.lineBreak();
+							sink.lineBreak();
+							sink.paragraph();
+							sink.bold();
+							sink.text("Method Declaration Signature: ");
+							sink.bold_();
+							sink.text(mth.getDeclarationSignature(true));
+							sink.paragraph_();
+							sink.section2_();
 						}
-						sink.lineBreak();
-						sink.lineBreak();
-						sink.paragraph();
-						sink.bold();
-						sink.text("Method Declaration Signature: ");
-						sink.bold_();
-						sink.text(mth.getDeclarationSignature(true));
-						sink.paragraph_();
-						sink.section2_();
 					}
+					sink.section1_();
 				}
-				sink.section1_();
 			}
+		} else {
+			sink.section1();
+			sink.bold();
+			sink.text("This project doesn't expose any JaxRs resources");
+			sink.bold_();
+			sink.section1_();
 		}
-		
 		sink.body_();
 		sink.flush();
 		sink.close();
 	}
 
+
 	@Override
 	public String getOutputName() {
 		return "jaxrs-report";
 	}
 
 	@Override
-	public String getName(Locale locale) {	
-		 return "JaxRs Report";
+	public String getName(Locale locale) {
+		return "JaxRs Report";
 	}
 
-
 	@Override
 	public String getDescription(Locale locale) {
 		return "Description of the REST webservices";
@@ -213,41 +231,37 @@
 
 	public boolean hasPathAnnotation(AbstractBaseJavaEntity entity) {
 
-		for(Annotation annotation : entity.getAnnotations()) {
-			if(annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
+		for (Annotation annotation : entity.getAnnotations()) {
+			if (annotation.getParameterValue().toString().contains("javax.ws.rs.Path")) {
 				return true;
 			}
-			
+
 		}
-        return false;
-    }
+		return false;
+	}
 
 	public JavaSource[] getSources() {
-		String src =  baseDir + File.separator + "src";
+		String src = baseDir + File.separator + "src";
 		File file = new File(src);
-        JavaDocBuilder builder = new JavaDocBuilder();
+		JavaDocBuilder builder = new JavaDocBuilder();
 		builder.addSourceTree(file);
 		return builder.getSources();
 
 	}
 
-    private JavaClass[] getJavaClassesFromSources()
-    {
-        final JavaSource[] sources = this.getSources();
-        final List<JavaClass> classes = new ArrayList<JavaClass>();
-        for ( int i = 0; i < sources.length; i++ )
-        {
-            for ( int j = 0; j < sources[i].getClasses().length; j++ )
-            {
-                final JavaClass clazz = sources[i].getClasses()[j];
-                classes.add( clazz );
-                for ( int k = 0; k < clazz.getNestedClasses().length; k++ )
-                {
-                    final JavaClass nestedClass = clazz.getNestedClasses()[k];
-                    classes.add( nestedClass );
-                }
-            }
-        }
-        return classes.toArray( new JavaClass[classes.size()] );
-    }
+	private JavaClass[] getJavaClassesFromSources() {
+		final JavaSource[] sources = this.getSources();
+		final List<JavaClass> classes = new ArrayList<JavaClass>();
+		for (int i = 0; i < sources.length; i++) {
+			for (int j = 0; j < sources[i].getClasses().length; j++) {
+				final JavaClass clazz = sources[i].getClasses()[j];
+				classes.add(clazz);
+				for (int k = 0; k < clazz.getNestedClasses().length; k++) {
+					final JavaClass nestedClass = clazz.getNestedClasses()[k];
+					classes.add(nestedClass);
+				}
+			}
+		}
+		return classes.toArray(new JavaClass[classes.size()]);
+	}
 }

Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml?rev=905576&r1=905575&r2=905576&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml Tue Feb  2 11:03:11 2010
@@ -38,6 +38,7 @@
 		<module>org.apache.clerezza.jaxrs.utils</module>
 		<module>org.apache.clerezza.maven-ontologies-plugin</module>
 		<module>org.apache.clerezza.maven-pladoc-plugin</module>
+		<module>org.apache.clerezza.maven-jaxrs-report-plugin</module>
 		<module>org.apache.clerezza.platform.config</module>
 		<module>org.apache.clerezza.platform.content.imagemetadata</module>
 		<module>org.apache.clerezza.platform.documentation</module>
@@ -1062,6 +1063,11 @@
 					<targetJdk>1.6</targetJdk>
 				</configuration>
 			</plugin>
+			<plugin>
+				<groupId>org.apache.clerezza</groupId>
+				<artifactId>org.apache.clerezza.maven-jaxrs-report-plugin</artifactId>
+				<version>0.1-incubating-SNAPSHOT</version>
+			</plugin>
 <!--			<plugin>
 				<groupId>org.apache.clerezza</groupId>
 				<artifactId>org.apache.clerezza.maven-pladoc-plugin.core</artifactId>