Author: oching
Date: Wed May 1 10:07:11 2013
New Revision: 1477941
URL: http://svn.apache.org/r1477941
Log:
[MRM-1757] remove trailing '/' in application url if present + unit test
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultArchivaAdministrationService.java
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/ArchivaAdministrationServiceTest.java
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=1477941&r1=1477940&r2=1477941&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
Wed May 1 10:07:11 2013
@@ -366,6 +366,10 @@ public class DefaultArchivaAdministratio
{
try
{
+ // fix for MRM-1757
+ // strip any trailing '/' at the end of the url so it won't affect
url/link calculations in UI
+
uiConfiguration.setApplicationUrl(StringUtils.stripEnd(uiConfiguration.getApplicationUrl(),
"/"));
+
archivaAdministration.updateUiConfiguration( uiConfiguration );
}
catch ( RepositoryAdminException e )
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/ArchivaAdministrationServiceTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/ArchivaAdministrationServiceTest.java?rev=1477941&r1=1477940&r2=1477941&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/ArchivaAdministrationServiceTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/ArchivaAdministrationServiceTest.java
Wed May 1 10:07:11 2013
@@ -141,6 +141,35 @@ public class ArchivaAdministrationServic
}
@Test
+ public void uiConfigurationUpdate_ApplicationUrlHasTrailingSlash()
+ throws Exception {
+
+ UiConfiguration ui =
getArchivaAdministrationService().getUiConfiguration();
+ assertNotNull( ui );
+ assertNull( ui.getApplicationUrl() );
+
+ String url = "http://foo.fr/bar/";
+ ui.setApplicationUrl( url );
+
+ getArchivaAdministrationService().setUiConfiguration( ui );
+
+ ui = getArchivaAdministrationService().getUiConfiguration();
+
+ assertEquals( "http://foo.fr/bar", ui.getApplicationUrl() );
+
+ // test if multiple '/' is trailing
+ url = "http://foo.fr/bar//";
+
+ ui.setApplicationUrl(url);
+
+ getArchivaAdministrationService().setUiConfiguration(ui);
+
+ ui = getArchivaAdministrationService().getUiConfiguration();
+
+ assertEquals( "http://foo.fr/bar", ui.getApplicationUrl() );
+ }
+
+ @Test
public void getKnownContentAdminRepositoryConsumer()
throws Exception
{