Author: olamy
Date: Fri Sep  9 14:38:09 2011
New Revision: 1167218

URL: http://svn.apache.org/viewvc?rev=1167218&view=rev
Log:
[MRM-1490] REST services : expose repository scanning configuration

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/LegacyArtifactPath.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/ArchivaAdministrationService.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/LegacyArtifactPath.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/LegacyArtifactPath.java?rev=1167218&r1=1167217&r2=1167218&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/LegacyArtifactPath.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/LegacyArtifactPath.java
 Fri Sep  9 14:38:09 2011
@@ -101,4 +101,15 @@ public class LegacyArtifactPath
     {
         return artifact.split( ":" )[4];
     }
+
+    @Override
+    public String toString()
+    {
+        final StringBuilder sb = new StringBuilder();
+        sb.append( "LegacyArtifactPath" );
+        sb.append( "{path='" ).append( path ).append( '\'' );
+        sb.append( ", artifact='" ).append( artifact ).append( '\'' );
+        sb.append( '}' );
+        return sb.toString();
+    }
 }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/ArchivaAdministrationService.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/ArchivaAdministrationService.java?rev=1167218&r1=1167217&r2=1167218&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/ArchivaAdministrationService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/ArchivaAdministrationService.java
 Fri Sep  9 14:38:09 2011
@@ -19,7 +19,9 @@ package org.apache.archiva.rest.api.serv
  */
 
 import org.apache.archiva.admin.repository.RepositoryAdminException;
+import org.apache.archiva.rest.api.model.FileType;
 import org.apache.archiva.rest.api.model.LegacyArtifactPath;
+import org.apache.archiva.rest.api.model.RepositoryScanning;
 import org.apache.archiva.security.common.ArchivaRoleConstants;
 import org.codehaus.plexus.redback.authorization.RedbackAuthorization;
 
@@ -60,4 +62,97 @@ public interface ArchivaAdministrationSe
     @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
     Boolean deleteLegacyArtifactPath( @QueryParam( "path" ) String path )
         throws RepositoryAdminException;
+
+    @Path( "getRepositoryScanning" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    RepositoryScanning getRepositoryScanning()
+        throws RepositoryAdminException;
+
+    @Path( "updateRepositoryScanning" )
+    @POST
+    @Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    void updateRepositoryScanning( RepositoryScanning repositoryScanning )
+        throws RepositoryAdminException;
+
+    @Path( "addFileTypePattern" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean addFileTypePattern( @QueryParam( "fileTypeId" ) String fileTypeId, 
@QueryParam( "pattern" ) String pattern )
+        throws RepositoryAdminException;
+
+    @Path( "removeFileTypePattern" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean removeFileTypePattern( @QueryParam( "fileTypeId" ) String 
fileTypeId,
+                                   @QueryParam( "pattern" ) String pattern )
+        throws RepositoryAdminException;
+
+    @Path( "getFileType" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    FileType getFileType( String fileTypeId )
+        throws RepositoryAdminException;
+
+    @Path( "addFileType" )
+    @POST
+    @Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    void addFileType( FileType fileType )
+        throws RepositoryAdminException;
+
+    @Path( "removeFileType" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean removeFileType( @QueryParam( "fileTypeId" ) String fileTypeId )
+        throws RepositoryAdminException;
+
+    @Path( "addKnownContentConsumer" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean addKnownContentConsumer( @QueryParam( "knownContentConsumer" ) 
String knownContentConsumer )
+        throws RepositoryAdminException;
+
+    @Path( "setKnownContentConsumers" )
+    @POST
+    @Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    void setKnownContentConsumers( List<String> knownContentConsumers )
+        throws RepositoryAdminException;
+
+
+    @Path( "removeKnownContentConsumer" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean removeKnownContentConsumer( @QueryParam( "knownContentConsumer" )  
String knownContentConsumer )
+        throws RepositoryAdminException;
+
+    @Path( "addInvalidContentConsumer" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean addInvalidContentConsumer(@QueryParam( "invalidContentConsumer" ) 
String invalidContentConsumer )
+        throws RepositoryAdminException;
+
+    @Path( "setInvalidContentConsumers" )
+    @POST
+    @Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    void setInvalidContentConsumers( List<String> invalidContentConsumers )
+        throws RepositoryAdminException;
+
+    @Path( "removeInvalidContentConsumer" )
+    @GET
+    @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, 
MediaType.TEXT_PLAIN } )
+    @RedbackAuthorization( permission = 
ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
+    Boolean removeInvalidContentConsumer(@QueryParam( "invalidContentConsumer" 
)  String invalidContentConsumer )
+        throws RepositoryAdminException;
 }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java?rev=1167218&r1=1167217&r2=1167218&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java
 Fri Sep  9 14:38:09 2011
@@ -21,7 +21,9 @@ package org.apache.archiva.rest.services
 import net.sf.beanlib.provider.replicator.BeanReplicator;
 import org.apache.archiva.admin.repository.RepositoryAdminException;
 import org.apache.archiva.admin.repository.admin.ArchivaAdministration;
+import org.apache.archiva.rest.api.model.FileType;
 import org.apache.archiva.rest.api.model.LegacyArtifactPath;
+import org.apache.archiva.rest.api.model.RepositoryScanning;
 import org.apache.archiva.rest.api.services.ArchivaAdministrationService;
 import org.springframework.stereotype.Service;
 
@@ -67,4 +69,100 @@ public class DefaultArchivaAdministratio
         archivaAdministration.deleteLegacyArtifactPath( path, 
getAuditInformation() );
         return Boolean.TRUE;
     }
+
+    public RepositoryScanning getRepositoryScanning()
+        throws RepositoryAdminException
+    {
+        return new BeanReplicator().replicateBean( 
archivaAdministration.getRepositoryScanning(),
+                                                   RepositoryScanning.class );
+    }
+
+    public void updateRepositoryScanning( RepositoryScanning 
repositoryScanning )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.updateRepositoryScanning( new 
BeanReplicator().replicateBean( getRepositoryScanning(),
+                                                                               
             org.apache.archiva.admin.repository.admin.RepositoryScanning.class 
),
+                                                        getAuditInformation() 
);
+    }
+
+    public Boolean addFileTypePattern( String fileTypeId, String pattern )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.addFileTypePattern( fileTypeId, pattern, 
getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public Boolean removeFileTypePattern( String fileTypeId, String pattern )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.removeFileTypePattern( fileTypeId, pattern, 
getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public FileType getFileType( String fileTypeId )
+        throws RepositoryAdminException
+    {
+        org.apache.archiva.admin.repository.admin.FileType fileType = 
archivaAdministration.getFileType( fileTypeId );
+        if ( fileType == null )
+        {
+            return null;
+        }
+        return new BeanReplicator().replicateBean( fileType, FileType.class );
+    }
+
+    public void addFileType( FileType fileType )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.addFileType(
+            new BeanReplicator().replicateBean( fileType, 
org.apache.archiva.admin.repository.admin.FileType.class ),
+            getAuditInformation() );
+
+    }
+
+    public Boolean removeFileType( String fileTypeId )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.removeFileType( fileTypeId, 
getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public Boolean addKnownContentConsumer( String knownContentConsumer )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.addKnownContentConsumer( knownContentConsumer, 
getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public void setKnownContentConsumers( List<String> knownContentConsumers )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.setKnownContentConsumers( knownContentConsumers, 
getAuditInformation() );
+    }
+
+    public Boolean removeKnownContentConsumer( String knownContentConsumer )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.removeKnownContentConsumer( 
knownContentConsumer, getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public Boolean addInvalidContentConsumer( String invalidContentConsumer )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.addInvalidContentConsumer( 
invalidContentConsumer, getAuditInformation() );
+        return Boolean.TRUE;
+    }
+
+    public void setInvalidContentConsumers( List<String> 
invalidContentConsumers )
+        throws RepositoryAdminException
+    {
+        archivaAdministration.setInvalidContentConsumers( 
invalidContentConsumers, getAuditInformation() );
+    }
+
+    public Boolean removeInvalidContentConsumer( String invalidContentConsumer 
)
+        throws RepositoryAdminException
+    {
+        archivaAdministration.removeInvalidContentConsumer( 
invalidContentConsumer, getAuditInformation() );
+        return Boolean.TRUE;
+    }
 }


Reply via email to