Author: olamy
Date: Sat Sep 3 21:22:56 2011
New Revision: 1164931
URL: http://svn.apache.org/viewvc?rev=1164931&view=rev
Log:
[MRM-1506] api to configure RemoteRepository : extract code from ManagedRepo
admin for validation
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/DefaultManagedRepositoryAdmin.java
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdmin.java
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.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=1164931&r1=1164930&r2=1164931&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
Sat Sep 3 21:22:56 2011
@@ -20,6 +20,7 @@ package org.apache.archiva.admin.reposit
import org.apache.archiva.admin.AuditInformation;
import org.apache.archiva.admin.repository.RepositoryAdminException;
+import org.apache.archiva.admin.repository.RepositoryCommonValidator;
import org.apache.archiva.audit.AuditEvent;
import org.apache.archiva.audit.AuditListener;
import org.apache.archiva.metadata.repository.MetadataRepository;
@@ -29,6 +30,7 @@ import org.apache.archiva.metadata.repos
import
org.apache.archiva.metadata.repository.stats.RepositoryStatisticsManager;
import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler;
import org.apache.archiva.scheduler.repository.RepositoryTask;
+import org.apache.archiva.security.ArchivaRoleConstants;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.validator.GenericValidator;
@@ -37,7 +39,6 @@ import org.apache.maven.archiva.configur
import
org.apache.maven.archiva.configuration.IndeterminateConfigurationException;
import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
import org.apache.maven.archiva.configuration.ProxyConnectorConfiguration;
-import org.apache.archiva.security.ArchivaRoleConstants;
import org.codehaus.plexus.redback.role.RoleManager;
import org.codehaus.plexus.redback.role.RoleManagerException;
import org.codehaus.plexus.redback.users.User;
@@ -68,9 +69,6 @@ import java.util.Map;
public class DefaultManagedRepositoryAdmin
implements ManagedRepositoryAdmin
{
- public static final String REPOSITORY_ID_VALID_EXPRESSION =
"^[a-zA-Z0-9._-]+$";
-
- public static final String REPOSITORY_NAME_VALID_EXPRESSION =
"^([a-zA-Z0-9.)/_(-]|\\s)+$";
public static final String REPOSITORY_LOCATION_VALID_EXPRESSION =
"^[-a-zA-Z0-9._/~:?!&=\\\\]+$";
@@ -99,6 +97,9 @@ public class DefaultManagedRepositoryAdm
private List<AuditListener> auditListeners = new
ArrayList<AuditListener>();
@Inject
+ private RepositoryCommonValidator repositoryCommonValidator;
+
+ @Inject
protected RoleManager roleManager;
public List<ManagedRepository> getManagedRepositories()
@@ -143,6 +144,8 @@ public class DefaultManagedRepositoryAdm
AuditInformation auditInformation )
throws RepositoryAdminException
{
+
+ repositoryCommonValidator.basicValidation( managedRepository, false );
triggerAuditEvent( managedRepository.getId(), null,
AuditEvent.ADD_MANAGED_REPO, auditInformation );
return
addManagedRepository( managedRepository.getId(),
managedRepository.getLayout(), managedRepository.getName(),
@@ -166,17 +169,6 @@ public class DefaultManagedRepositoryAdm
Configuration config = getArchivaConfiguration().getConfiguration();
- if ( config.getManagedRepositoriesAsMap().containsKey( repoId ) )
- {
- throw new RepositoryAdminException( "Unable to add new repository
with id [" + repoId
- + "], that id already
exists as a managed repository." );
- }
- else if ( config.getRepositoryGroupsAsMap().containsKey( repoId ) )
- {
- throw new RepositoryAdminException( "Unable to add new repository
with id [" + repoId
- + "], that id already
exists as a repository group." );
- }
-
// FIXME : olamy can be empty to avoid scheduled scan ?
if ( StringUtils.isNotBlank( cronExpression ) )
{
@@ -192,30 +184,7 @@ public class DefaultManagedRepositoryAdm
throw new RepositoryAdminException( "Cron expression cannot be
empty." );
}
- if ( StringUtils.isBlank( repoId ) )
- {
- throw new RepositoryAdminException( "Repository ID cannot be
empty." );
- }
-
- if ( !GenericValidator.matchRegexp( repoId,
REPOSITORY_ID_VALID_EXPRESSION ) )
- {
- throw new RepositoryAdminException(
- "Invalid repository ID. Identifier must only contain
alphanumeric characters, underscores(_), dots(.), and dashes(-)." );
- }
-
- if ( StringUtils.isBlank( name ) )
- {
- throw new RepositoryAdminException( "repository name cannot be
empty" );
- }
-
- if ( !GenericValidator.matchRegexp( name,
REPOSITORY_NAME_VALID_EXPRESSION ) )
- {
- throw new RepositoryAdminException(
- "Invalid repository name. Repository Name must only contain
alphanumeric characters, white-spaces(' '), "
- + "forward-slashes(/), open-parenthesis('('),
close-parenthesis(')'), underscores(_), dots(.), and dashes(-)." );
- }
-
- String repoLocation = removeExpressions( location );
+ String repoLocation = repositoryCommonValidator.removeExpressions(
location );
if ( !GenericValidator.matchRegexp( repoLocation,
REPOSITORY_LOCATION_VALID_EXPRESSION ) )
{
@@ -404,12 +373,16 @@ public class DefaultManagedRepositoryAdm
AuditInformation auditInformation,
boolean resetStats )
throws RepositoryAdminException
{
- // Ensure that the fields are valid.
- Configuration configuration =
getArchivaConfiguration().getConfiguration();
log.debug( "updateManagedConfiguration repo {} needStage {} resetStats
{} ",
Arrays.asList( managedRepository, needStageRepo, resetStats
).toArray() );
+ // Ensure that the fields are valid.
+
+ repositoryCommonValidator.basicValidation( managedRepository, true );
+
+ Configuration configuration =
getArchivaConfiguration().getConfiguration();
+
ManagedRepositoryConfiguration toremove =
configuration.findManagedRepositoryById( managedRepository.getId() );
if ( toremove != null )
@@ -488,14 +461,6 @@ public class DefaultManagedRepositoryAdm
}
- public String removeExpressions( String directory )
- {
- String value = StringUtils.replace( directory, "${appserver.base}",
- getRegistry().getString(
"appserver.base", "${appserver.base}" ) );
- value = StringUtils.replace( value, "${appserver.home}",
- getRegistry().getString(
"appserver.home", "${appserver.home}" ) );
- return value;
- }
private void saveConfiguration( Configuration config )
throws RepositoryAdminException
@@ -685,4 +650,14 @@ public class DefaultManagedRepositoryAdm
{
this.registry = registry;
}
+
+ public RepositoryCommonValidator getRepositoryCommonValidator()
+ {
+ return repositoryCommonValidator;
+ }
+
+ public void setRepositoryCommonValidator( RepositoryCommonValidator
repositoryCommonValidator )
+ {
+ this.repositoryCommonValidator = repositoryCommonValidator;
+ }
}
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdmin.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/ManagedRepositoryAdmin.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdmin.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdmin.java
Sat Sep 3 21:22:56 2011
@@ -48,11 +48,5 @@ public interface ManagedRepositoryAdmin
AuditInformation auditInformation,
boolean resetStats )
throws RepositoryAdminException;
- /**
- * replace some interpolations ${appserver.base} with correct values
- * @param directory
- * @return
- */
- String removeExpressions( String directory );
}
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
Sat Sep 3 21:22:56 2011
@@ -21,9 +21,9 @@ package org.apache.archiva.admin.reposit
import org.apache.archiva.admin.AuditInformation;
import org.apache.archiva.admin.mock.MockAuditListener;
import org.apache.archiva.audit.AuditEvent;
+import org.apache.archiva.security.ArchivaRoleConstants;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang.StringUtils;
-import org.apache.archiva.security.ArchivaRoleConstants;
import org.codehaus.plexus.redback.role.RoleManager;
import org.codehaus.plexus.redback.users.User;
import org.codehaus.plexus.redback.users.memory.SimpleUser;
@@ -184,6 +184,7 @@ public class ManagedRepositoryAdminTest
assertAuditListenerCallAndUpdateAddAndDelete( false );
mockAuditListener.clearEvents();
+
}
@@ -242,6 +243,7 @@ public class ManagedRepositoryAdminTest
assertTemplateRoleNotExists( repoId + STAGE_REPO_ID_END );
mockAuditListener.clearEvents();
+
}
@Test
@@ -264,6 +266,8 @@ public class ManagedRepositoryAdminTest
ManagedRepository repo = getTestManagedRepository( repoId,
repoLocation );
+
+
managedRepositoryAdmin.addManagedRepository( repo, false,
getFakeAuditInformation() );
assertTemplateRoleExists( repoId );
@@ -323,6 +327,7 @@ public class ManagedRepositoryAdminTest
assertAuditListenerCallAndUpdateAddAndDelete( true );
mockAuditListener.clearEvents();
+
}
//----------------------------------
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java
Sat Sep 3 21:22:56 2011
@@ -19,14 +19,15 @@ package org.apache.maven.archiva.web.act
* under the License.
*/
+import org.apache.archiva.admin.repository.RepositoryCommonValidator;
import org.apache.archiva.admin.repository.managed.ManagedRepositoryAdmin;
import org.apache.archiva.audit.Auditable;
+import org.apache.archiva.security.ArchivaRoleConstants;
import org.apache.maven.archiva.configuration.ArchivaConfiguration;
import org.apache.maven.archiva.configuration.Configuration;
import
org.apache.maven.archiva.configuration.IndeterminateConfigurationException;
import org.apache.maven.archiva.configuration.InvalidConfigurationException;
import org.apache.maven.archiva.configuration.ProxyConnectorConfiguration;
-import org.apache.archiva.security.ArchivaRoleConstants;
import org.apache.maven.archiva.web.action.AbstractActionSupport;
import org.codehaus.plexus.redback.rbac.Resource;
import org.codehaus.plexus.registry.RegistryException;
@@ -60,6 +61,9 @@ public abstract class AbstractRepositori
@Inject
private ManagedRepositoryAdmin managedRepositoryAdmin;
+ @Inject
+ private RepositoryCommonValidator repositoryCommonValidator;
+
public ArchivaConfiguration getArchivaConfiguration()
{
return archivaConfiguration;
@@ -133,4 +137,13 @@ public abstract class AbstractRepositori
this.managedRepositoryAdmin = managedRepositoryAdmin;
}
+ public RepositoryCommonValidator getRepositoryCommonValidator()
+ {
+ return repositoryCommonValidator;
+ }
+
+ public void setRepositoryCommonValidator( RepositoryCommonValidator
repositoryCommonValidator )
+ {
+ this.repositoryCommonValidator = repositoryCommonValidator;
+ }
}
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java
Sat Sep 3 21:22:56 2011
@@ -25,7 +25,6 @@ import org.apache.archiva.admin.reposito
import org.apache.archiva.admin.repository.managed.ManagedRepository;
import org.apache.commons.lang.StringUtils;
import org.apache.maven.archiva.configuration.Configuration;
-import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
import org.codehaus.redback.components.scheduler.CronExpressionValidator;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
@@ -74,7 +73,7 @@ public class AddManagedRepositoryAction
public String commit()
{
- repository.setLocation( getManagedRepositoryAdmin().removeExpressions(
repository.getLocation() ) );
+ repository.setLocation(
getRepositoryCommonValidator().removeExpressions( repository.getLocation() ) );
File location = new File( repository.getLocation() );
if ( location.exists() )
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java
Sat Sep 3 21:22:56 2011
@@ -95,7 +95,7 @@ public class EditManagedRepositoryAction
boolean resetStats = false;
// check if the location was changed
- repository.setLocation( getManagedRepositoryAdmin().removeExpressions(
repository.getLocation() ) );
+ repository.setLocation(
getRepositoryCommonValidator().removeExpressions( repository.getLocation() ) );
if ( !StringUtils.equalsIgnoreCase(
existingConfig.getLocation().trim(), repository.getLocation().trim() ) )
{
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java
Sat Sep 3 21:22:56 2011
@@ -20,15 +20,16 @@ package org.apache.maven.archiva.web.act
*/
import com.opensymphony.xwork2.Action;
+import org.apache.archiva.admin.repository.RepositoryCommonValidator;
import
org.apache.archiva.admin.repository.managed.DefaultManagedRepositoryAdmin;
import org.apache.archiva.admin.repository.managed.ManagedRepository;
import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler;
import org.apache.archiva.scheduler.repository.RepositoryTask;
+import org.apache.archiva.security.ArchivaRoleConstants;
+import org.apache.archiva.web.validator.utils.ValidatorUtil;
import org.apache.commons.io.FileUtils;
import org.apache.maven.archiva.configuration.ArchivaConfiguration;
import org.apache.maven.archiva.configuration.Configuration;
-import org.apache.archiva.security.ArchivaRoleConstants;
-import org.apache.archiva.web.validator.utils.ValidatorUtil;
import org.codehaus.plexus.redback.role.RoleManager;
import org.codehaus.plexus.registry.Registry;
import org.codehaus.redback.integration.interceptor.SecureActionBundle;
@@ -98,6 +99,16 @@ public class AddManagedRepositoryActionT
( (DefaultManagedRepositoryAdmin) getManagedRepositoryAdmin()
).setRegistry( registry );
( (DefaultManagedRepositoryAdmin) getManagedRepositoryAdmin()
).setRepositoryTaskScheduler(
repositoryTaskScheduler );
+
+ RepositoryCommonValidator repositoryCommonValidator = new
RepositoryCommonValidator();
+ repositoryCommonValidator.setArchivaConfiguration(
archivaConfiguration );
+ repositoryCommonValidator.setRegistry( registry );
+
+ ( (DefaultManagedRepositoryAdmin) getManagedRepositoryAdmin()
).setRepositoryCommonValidator(
+ repositoryCommonValidator );
+
+ action.setRepositoryCommonValidator( repositoryCommonValidator );
+
action.setManagedRepositoryAdmin( getManagedRepositoryAdmin() );
}
@@ -120,6 +131,8 @@ public class AddManagedRepositoryActionT
{
archivaConfiguration.getConfiguration();
archivaConfigurationControl.setReturnValue( new Configuration() );
+ archivaConfiguration.getConfiguration();
+ archivaConfigurationControl.setReturnValue( new Configuration() );
archivaConfigurationControl.replay();
action.prepare();
@@ -185,6 +198,9 @@ public class AddManagedRepositoryActionT
archivaConfiguration.getConfiguration();
archivaConfigurationControl.setReturnValue( configuration );
+ archivaConfiguration.getConfiguration();
+ archivaConfigurationControl.setReturnValue( configuration );
+
archivaConfiguration.save( configuration );
archivaConfigurationControl.replay();
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
Sat Sep 3 21:22:56 2011
@@ -21,6 +21,7 @@ package org.apache.maven.archiva.web.act
import com.opensymphony.xwork2.Action;
import org.apache.archiva.admin.repository.RepositoryAdminException;
+import org.apache.archiva.admin.repository.RepositoryCommonValidator;
import
org.apache.archiva.admin.repository.managed.DefaultManagedRepositoryAdmin;
import org.apache.archiva.admin.repository.managed.ManagedRepository;
import org.apache.archiva.audit.AuditListener;
@@ -121,6 +122,15 @@ public class EditManagedRepositoryAction
( (DefaultManagedRepositoryAdmin) getManagedRepositoryAdmin()
).setAuditListeners(
new ArrayList<AuditListener>( 0 ) );
+ RepositoryCommonValidator repositoryCommonValidator = new
RepositoryCommonValidator();
+ repositoryCommonValidator.setArchivaConfiguration(
archivaConfiguration );
+ repositoryCommonValidator.setRegistry( registry );
+
+ ( (DefaultManagedRepositoryAdmin) getManagedRepositoryAdmin()
).setRepositoryCommonValidator(
+ repositoryCommonValidator );
+
+ action.setRepositoryCommonValidator( repositoryCommonValidator );
+
action.setManagedRepositoryAdmin( getManagedRepositoryAdmin() );
}
@@ -230,6 +240,7 @@ public class EditManagedRepositoryAction
archivaConfigurationControl.setReturnValue( configuration );
archivaConfigurationControl.setReturnValue( configuration );
+ archivaConfigurationControl.setReturnValue( configuration );
Configuration stageRepoConfiguration = new Configuration();
stageRepoConfiguration.addManagedRepository( createStagingRepository()
);
@@ -331,6 +342,8 @@ public class EditManagedRepositoryAction
archivaConfigurationControl.setReturnValue( configuration );
archivaConfigurationControl.setReturnValue( configuration );
+ archivaConfigurationControl.setReturnValue( configuration );
+
archivaConfigurationControl.setReturnValue( buildEasyConfiguration() );
Configuration stageRepoConfiguration = buildEasyConfiguration();
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java?rev=1164931&r1=1164930&r2=1164931&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java
Sat Sep 3 21:22:56 2011
@@ -20,6 +20,7 @@ package org.apache.archiva.web.xmlrpc.se
*/
import junit.framework.TestCase;
+import org.apache.archiva.admin.repository.RepositoryCommonValidator;
import
org.apache.archiva.admin.repository.managed.DefaultManagedRepositoryAdmin;
import org.apache.archiva.audit.AuditEvent;
import org.apache.archiva.audit.AuditListener;
@@ -34,6 +35,7 @@ import org.apache.archiva.repository.eve
import org.apache.archiva.repository.scanner.RepositoryContentConsumers;
import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler;
import org.apache.archiva.scheduler.repository.RepositoryTask;
+import org.apache.archiva.security.ArchivaRoleConstants;
import org.apache.archiva.stagerepository.merge.RepositoryMerger;
import org.apache.archiva.web.xmlrpc.api.beans.ManagedRepository;
import org.apache.archiva.web.xmlrpc.api.beans.RemoteRepository;
@@ -54,7 +56,6 @@ import org.apache.maven.archiva.reposito
import
org.apache.maven.archiva.repository.content.ManagedLegacyRepositoryContent;
import org.apache.maven.archiva.repository.content.PathParser;
import org.apache.maven.archiva.repository.layout.LayoutException;
-import org.apache.archiva.security.ArchivaRoleConstants;
import org.codehaus.plexus.redback.role.RoleManager;
import org.codehaus.plexus.registry.Registry;
import org.easymock.MockControl;
@@ -62,6 +63,7 @@ import org.easymock.classextension.MockC
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.springframework.context.ApplicationContext;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@@ -156,6 +158,8 @@ public class AdministrationServiceImplTe
private DefaultManagedRepositoryAdmin managedRepositoryAdmin;
+ private ApplicationContext applicationContext;
+
@Before
public void setUp()
throws Exception
@@ -223,6 +227,12 @@ public class AdministrationServiceImplTe
managedRepositoryAdmin.setAuditListeners( Arrays.asList( auditListener
) );
managedRepositoryAdmin.setRoleManager( roleManager );
+ RepositoryCommonValidator repositoryCommonValidator = new
RepositoryCommonValidator();
+ repositoryCommonValidator.setArchivaConfiguration( archivaConfig );
+ repositoryCommonValidator.setRegistry( registry );
+
+ managedRepositoryAdmin.setRepositoryCommonValidator(
repositoryCommonValidator );
+
service = new AdministrationServiceImpl( archivaConfig,
repoConsumersUtil, repositoryFactory,
repositorySessionFactory,
repositoryTaskScheduler,
Collections.singletonList(
listener ), repositoryStatisticsManager,
@@ -1148,6 +1158,7 @@ public class AdministrationServiceImplTe
repoGroupMap.put( "repo1", repoGroup );
archivaConfigControl.expectAndReturn(
archivaConfig.getConfiguration(), config );
+ archivaConfigControl.expectAndReturn(
archivaConfig.getConfiguration(), config );
configControl.expectAndReturn( config.getManagedRepositoriesAsMap(),
managedRepoMap );
configControl.expectAndReturn( config.getRemoteRepositoriesAsMap(),
remoteRepoMap );
@@ -1168,10 +1179,10 @@ public class AdministrationServiceImplTe
}
catch ( Exception e )
{
- assertEquals(
- "Invalid repository location. Directory must only contain
alphanumeric characters, equals(=), question-marks(?), "
- + "exclamation-points(!), ampersands(&),
forward-slashes(/), back-slashes(\\), underscores(_), dots(.), colons(:),
tildes(~), and dashes(-).",
- e.getMessage() );
+ assertEquals( "message found " + e.getMessage(),
+ "Invalid repository location. Directory must only
contain alphanumeric characters, equals(=), question-marks(?), "
+ + "exclamation-points(!), ampersands(&),
forward-slashes(/), back-slashes(\\), underscores(_), dots(.), colons(:),
tildes(~), and dashes(-).",
+ e.getMessage() );
}
registryControl.verify();