Author: olamy
Date: Fri Feb  3 18:07:38 2012
New Revision: 1240272

URL: http://svn.apache.org/viewvc?rev=1240272&view=rev
Log:
when validating if a repo id exists we must validated against managed,remote 
and group

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/java/org/apache/archiva/webapp/ui/services/api/DefaultDataValidatorService.java

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/java/org/apache/archiva/webapp/ui/services/api/DefaultDataValidatorService.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/java/org/apache/archiva/webapp/ui/services/api/DefaultDataValidatorService.java?rev=1240272&r1=1240271&r2=1240272&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/java/org/apache/archiva/webapp/ui/services/api/DefaultDataValidatorService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/java/org/apache/archiva/webapp/ui/services/api/DefaultDataValidatorService.java
 Fri Feb  3 18:07:38 2012
@@ -19,6 +19,7 @@ package org.apache.archiva.webapp.ui.ser
  */
 
 import org.apache.archiva.admin.model.RepositoryAdminException;
+import org.apache.archiva.admin.model.group.RepositoryGroupAdmin;
 import org.apache.archiva.admin.model.managed.ManagedRepositoryAdmin;
 import org.apache.archiva.admin.model.networkproxy.NetworkProxyAdmin;
 import org.apache.archiva.admin.model.remote.RemoteRepositoryAdmin;
@@ -45,13 +46,16 @@ public class DefaultDataValidatorService
     @Inject
     private NetworkProxyAdmin networkProxyAdmin;
 
+    @Inject
+    private RepositoryGroupAdmin repositoryGroupAdmin;
+
 
     public Boolean managedRepositoryIdNotExists( String id )
         throws ArchivaRestServiceException
     {
         try
         {
-            return managedRepositoryAdmin.getManagedRepository( id ) == null;
+            return !idExist( id );
         }
         catch ( RepositoryAdminException e )
         {
@@ -64,7 +68,7 @@ public class DefaultDataValidatorService
     {
         try
         {
-            return remoteRepositoryAdmin.getRemoteRepository( id ) == null;
+            return !idExist( id );
         }
         catch ( RepositoryAdminException e )
         {
@@ -84,4 +88,18 @@ public class DefaultDataValidatorService
             throw new ArchivaRestServiceException( e.getMessage() );
         }
     }
+
+    /**
+     * check if managedRepo, remoteRepo ou group exists with this id
+     *
+     * @param id
+     * @return true if something exists with this id.
+     */
+    private Boolean idExist( String id )
+        throws RepositoryAdminException
+    {
+        return ( managedRepositoryAdmin.getManagedRepository( id ) != null ) 
|| (
+            remoteRepositoryAdmin.getRemoteRepository( id ) != null ) || ( 
repositoryGroupAdmin.getRepositoryGroup( id )
+            != null );
+    }
 }


Reply via email to