You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by jo...@apache.org on 2007/10/24 02:00:31 UTC
svn commit: r587701 - in
/maven/archiva/trunk/archiva-base/archiva-repository-layer/src:
main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java
test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java
Author: joakime
Date: Tue Oct 23 17:00:30 2007
New Revision: 587701
URL: http://svn.apache.org/viewvc?rev=587701&view=rev
Log:
Adding some tests for invalid request paths.
Modified:
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java
Modified: maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java?rev=587701&r1=587700&r2=587701&view=diff
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java Tue Oct 23 17:00:30 2007
@@ -99,13 +99,30 @@
public ArtifactReference toArtifactReference( String requestedPath )
throws LayoutException
{
- if ( isDefault( requestedPath ) )
+ if ( StringUtils.isBlank( requestedPath ) )
{
- return DefaultPathParser.toArtifactReference( requestedPath );
+ throw new LayoutException( "Blank request path is not a valid." );
}
- else if ( isLegacy( requestedPath ) )
+
+ String path = requestedPath;
+ while ( path.startsWith( "/" ) )
{
- return LegacyPathParser.toArtifactReference( requestedPath );
+ path = path.substring( 1 );
+
+ // Only slash? that's bad, mmm-kay?
+ if ( "/".equals( path ) )
+ {
+ throw new LayoutException( "Invalid request path: Slash only." );
+ }
+ }
+
+ if ( isDefault( path ) )
+ {
+ return DefaultPathParser.toArtifactReference( path );
+ }
+ else if ( isLegacy( path ) )
+ {
+ return LegacyPathParser.toArtifactReference( path );
}
else
{
Modified: maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java?rev=587701&r1=587700&r2=587701&view=diff
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/RepositoryRequestTest.java Tue Oct 23 17:00:30 2007
@@ -127,8 +127,10 @@
throws Exception
{
assertValid( "org.apache.derby/poms/derby-10.2.2.0.pom", "org.apache.derby", "derby", "10.2.2.0", null, "pom" );
+ // Starting slash should not prevent detection.
+ assertValid( "/org.apache.derby/poms/derby-10.2.2.0.pom", "org.apache.derby", "derby", "10.2.2.0", null, "pom" );
}
-
+
public void testValidDefaultDerbyPom()
throws Exception
{