Author: olamy
Date: Tue Sep 13 12:02:18 2011
New Revision: 1170130

URL: http://svn.apache.org/viewvc?rev=1170130&view=rev
Log:
during ManagedRepository update save only once as it cause some issues on 
RegistryListener (repo not found at the first save after removing the updated 
repo)

Modified:
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java?rev=1170130&r1=1170129&r2=1170130&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java
 Tue Sep 13 12:02:18 2011
@@ -152,7 +152,8 @@ public class DefaultManagedRepositoryAdm
                                   managedRepository.isReleases(), 
managedRepository.isSnapshots(), needStageRepo,
                                   managedRepository.getCronExpression(), 
managedRepository.getIndexDirectory(),
                                   managedRepository.getDaysOlder(), 
managedRepository.getRetentionCount(),
-                                  
managedRepository.isDeleteReleasedSnapshots(), auditInformation ) != null;
+                                  
managedRepository.isDeleteReleasedSnapshots(), auditInformation,
+                                  getArchivaConfiguration().getConfiguration() 
) != null;
 
     }
 
@@ -162,12 +163,11 @@ public class DefaultManagedRepositoryAdm
                                                                  boolean 
stageRepoNeeded, String cronExpression,
                                                                  String 
indexDir, int daysOlder, int retentionCount,
                                                                  boolean 
deteleReleasedSnapshots,
-                                                                 
AuditInformation auditInformation )
+                                                                 
AuditInformation auditInformation,
+                                                                 Configuration 
config )
         throws RepositoryAdminException
     {
 
-        Configuration config = getArchivaConfiguration().getConfiguration();
-
         // FIXME : olamy can be empty to avoid scheduled scan ?
         if ( StringUtils.isNotBlank( cronExpression ) )
         {
@@ -349,7 +349,8 @@ public class DefaultManagedRepositoryAdm
                 for ( String repoGroup : repoGroups )
                 {
                     // copy to prevent UnsupportedOperationException
-                    RepositoryGroupConfiguration repositoryGroupConfiguration 
= config.findRepositoryGroupById( repoGroup );
+                    RepositoryGroupConfiguration repositoryGroupConfiguration =
+                        config.findRepositoryGroupById( repoGroup );
                     List<String> repos = new ArrayList<String>( 
repositoryGroupConfiguration.getRepositories() );
                     config.removeRepositoryGroup( repositoryGroupConfiguration 
);
                     repos.remove( repository.getId() );
@@ -405,18 +406,14 @@ public class DefaultManagedRepositoryAdm
             configuration.removeManagedRepository( stagingRepository );
         }
 
-        if ( toremove != null && stagingRepository != null )
-        {
-            saveConfiguration( configuration );
-        }
-
         ManagedRepositoryConfiguration managedRepositoryConfiguration =
             addManagedRepository( managedRepository.getId(), 
managedRepository.getLayout(), managedRepository.getName(),
                                   managedRepository.getLocation(), 
managedRepository.isBlockRedeployments(),
                                   managedRepository.isReleases(), 
managedRepository.isSnapshots(), needStageRepo,
                                   managedRepository.getCronExpression(), 
managedRepository.getIndexDirectory(),
                                   managedRepository.getDaysOlder(), 
managedRepository.getRetentionCount(),
-                                  
managedRepository.isDeleteReleasedSnapshots(), auditInformation );
+                                  
managedRepository.isDeleteReleasedSnapshots(), auditInformation,
+                                  getArchivaConfiguration().getConfiguration() 
);
 
         // Save the repository configuration.
         RepositorySession repositorySession = 
getRepositorySessionFactory().createSession();


Reply via email to