Author: olamy
Date: Thu Oct  4 22:49:11 2012
New Revision: 1394312

URL: http://svn.apache.org/viewvc?rev=1394312&view=rev
Log:
[MRM-1683] Automatic generation of REST Api documentation.

Added:
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/enunciate.xml
      - copied, changed from r1393796, 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml
Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/pom.xml
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Dependency.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java
    archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/pom.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/pom.xml?rev=1394312&r1=1394311&r2=1394312&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/pom.xml 
(original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/pom.xml 
Thu Oct  4 22:49:11 2012
@@ -28,6 +28,11 @@
   <packaging>bundle</packaging>
   <name>Archiva Web :: REST support :: Api</name>
 
+  <properties>
+    <enunciate.version>1.26.1</enunciate.version>
+    <enunciate.debug>false</enunciate.debug>
+  </properties>
+
   <dependencies>
     <dependency>
       <groupId>org.apache.archiva</groupId>
@@ -94,6 +99,21 @@
         </exclusion>
       </exclusions>
     </dependency>
+
+    <dependency>
+      <groupId>org.codehaus.enunciate</groupId>
+      <artifactId>enunciate-core</artifactId>
+      <scope>provided</scope>
+      <version>${enunciate.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.codehaus.jackson</groupId>
+      <artifactId>jackson-xc</artifactId>
+      <version>${jacksonVersion}</version>
+      <scope>provided</scope>
+    </dependency>
+
   </dependencies>
 
   <build>
@@ -136,6 +156,34 @@
           </execution>
         </executions>
       </plugin>
+
+
+     <plugin>
+       <groupId>org.codehaus.enunciate</groupId>
+       <artifactId>maven-enunciate-plugin</artifactId>
+       <version>${enunciate.version}</version>
+       <executions>
+         <execution>
+           <phase>process-classes</phase>
+           <goals>
+             <goal>docs</goal>
+           </goals>
+         </execution>
+       </executions>
+       <configuration>
+         <docsDir>${project.build.outputDirectory}/docs</docsDir>
+         <configFile>src/enunciate/enunciate.xml</configFile>
+         <compileDebug>${enunciate.debug}</compileDebug>
+       </configuration>
+       <dependencies>
+         <dependency>
+           <groupId>org.codehaus.enunciate</groupId>
+           <artifactId>enunciate-docs</artifactId>
+           <version>${enunciate.version}</version>
+         </dependency>
+       </dependencies>
+     </plugin>
+
     </plugins>
   </build>
 

Copied: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/enunciate.xml
 (from r1393796, archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml)
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/enunciate.xml?p2=archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/enunciate.xml&p1=archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml&r1=1393796&r2=1394312&rev=1394312&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/enunciate/enunciate.xml
 Thu Oct  4 22:49:11 2012
@@ -17,18 +17,27 @@
   ~ specific language governing permissions and limitations
   ~ under the License.
   -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.archiva</groupId>
-    <artifactId>archiva-web</artifactId>
-    <version>1.4-M4-SNAPSHOT</version>
-  </parent>
-  <artifactId>archiva-rest</artifactId>
-  <name>Archiva Web :: REST support</name>
-  <packaging>pom</packaging>
+<enunciate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://enunciate.codehaus.org/schemas/enunciate-1.26.xsd";>
+
+  <services>
+    <rest defaultRestSubcontext="restServices"/>
+  </services>
+
   <modules>
-    <module>archiva-rest-api</module>
-    <module>archiva-rest-services</module>
+
+    <cxf disabled="false"/>
+    <jersey disabled="true" />
+    <c disabled="true"/>
+    <csharp disabled="true"/>
+    <obj-c disabled="true"/>
+    <jaxws-ri disabled="true"/>
+    <jaxws-support disabled="true"/>
+
+    <docs disabled="false" title="Apache Archiva REST API" 
includeExampleXml="true" includeExampleJson="true"
+          includeDefaultDownloads="false">
+      <war docsDir="apidocs" />
+    </docs>
+
   </modules>
-</project>
\ No newline at end of file
+
+</enunciate>
\ No newline at end of file

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Dependency.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Dependency.java?rev=1394312&r1=1394311&r2=1394312&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Dependency.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Dependency.java
 Thu Oct  4 22:49:11 2012
@@ -38,6 +38,12 @@ public class Dependency
 
     private String scope;
 
+    public Dependency()
+    {
+        // no op
+    }
+
+
     public Dependency( String groupId, String artifactId, String version, 
String classifier, String type, String scope )
     {
         this.groupId = groupId;

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java?rev=1394312&r1=1394311&r2=1394312&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java
 Thu Oct  4 22:49:11 2012
@@ -58,6 +58,10 @@ public interface BrowseService
     @GET
     @Produces ({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
     @RedbackAuthorization (noPermission = true, noRestriction = true)
+    /**
+     * @param groupId groupId to browse
+     * @param repositoryId optionnal (repository to browse if 
<code>null</code> all available user repositories are used)
+     */
     BrowseResult browseGroupId( @PathParam ("groupId") String groupId,
                                 @QueryParam ("repositoryId") String 
repositoryId )
         throws ArchivaRestServiceException;

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml?rev=1394312&r1=1394311&r2=1394312&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-rest/pom.xml Thu Oct  4 
22:49:11 2012
@@ -30,5 +30,6 @@
   <modules>
     <module>archiva-rest-api</module>
     <module>archiva-rest-services</module>
+    <module>archiva-rest-documentor</module>
   </modules>
 </project>
\ No newline at end of file


Reply via email to