Author: olamy
Date: Tue Sep 13 12:03:08 2011
New Revision: 1170133

URL: http://svn.apache.org/viewvc?rev=1170133&view=rev
Log:
[MRM-1490] REST services : fix design of search service

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/SearchService.java

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/SearchService.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/SearchService.java?rev=1170133&r1=1170132&r2=1170133&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/SearchService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/SearchService.java
 Tue Sep 13 12:03:08 2011
@@ -22,8 +22,13 @@ package org.apache.archiva.rest.api.serv
 
 import org.apache.archiva.rest.api.model.Artifact;
 import org.apache.archiva.rest.api.model.Dependency;
+import org.codehaus.plexus.redback.authorization.RedbackAuthorization;
 
+import javax.ws.rs.GET;
 import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
+import javax.ws.rs.core.MediaType;
 import java.util.List;
 
 @Path( "/searchService/" )
@@ -38,16 +43,35 @@ public interface SearchService
     * TODO query for all artifacts that depend on a given artifact
     */
 
-    List<Artifact> quickSearch( String queryString )
-        throws Exception;
-
-    List<Artifact> getArtifactByChecksum( String checksum )
-        throws Exception;
-
-    List<Artifact> getArtifactVersions( String groupId, String artifactId )
-        throws Exception;
-
-    List<Dependency> getDependencies( String groupId, String artifactId, 
String version )
-        throws Exception;
+    @Path( "quickSearch" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( noPermission = true, noRestriction = true )
+    List<Artifact> quickSearch( @QueryParam( "queryString" ) String 
queryString )
+        throws ArchivaRestServiceException;
+
+    @Path( "getArtifactByChecksum" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( noPermission = true, noRestriction = true )
+    List<Artifact> getArtifactByChecksum( @QueryParam( "checksum" ) String 
checksum )
+        throws ArchivaRestServiceException;
+
+    @Path( "getArtifactVersions" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( noPermission = true, noRestriction = true )
+    List<Artifact> getArtifactVersions( @QueryParam( "groupId" ) String 
groupId,
+                                        @QueryParam( "artifactId" ) String 
artifactId )
+        throws ArchivaRestServiceException;
+
+    @Path( "getDependencies" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( noPermission = true, noRestriction = true )
+    List<Dependency> getDependencies( @QueryParam( "groupId" ) String groupId,
+                                      @QueryParam( "artifactId" ) String 
artifactId,
+                                      @QueryParam( "version" ) String version )
+        throws ArchivaRestServiceException;
 
 }


Reply via email to