You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2008/02/19 09:29:34 UTC
svn commit: r629020 - in
/maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src:
main/java/org/apache/maven/archiva/repository/content/
test/java/org/apache/maven/archiva/repository/content/
Author: brett
Date: Tue Feb 19 00:29:33 2008
New Revision: 629020
URL: http://svn.apache.org/viewvc?rev=629020&view=rev
Log:
[MRM-703] Artifacts with extensions longer than fours characters breaks repository scanning
Submitted by: Jim Jackson
Modified:
maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java
maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java
Modified: maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java
URL: http://svn.apache.org/viewvc/maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java?rev=629020&r1=629019&r2=629020&view=diff
==============================================================================
--- maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java (original)
+++ maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java Tue Feb 19 00:29:33 2008
@@ -40,7 +40,7 @@
private static final Pattern mavenPluginPattern = Pattern.compile( "(maven-.*-plugin)|(.*-maven-plugin)" );
- private static final Pattern extensionPattern = Pattern.compile( "(.tar.gz$)|(.tar.bz2$)|(.[a-z0-9]{1,4}$)",
+ private static final Pattern extensionPattern = Pattern.compile( "(.tar.gz$)|(.tar.bz2$)|(.[a-z0-9]*$)",
Pattern.CASE_INSENSITIVE );
private static final Pattern section = Pattern.compile( "([^-]*)" );
Modified: maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java?rev=629020&r1=629019&r2=629020&view=diff
==============================================================================
--- maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java (original)
+++ maven/archiva/branches/archiva-1.0.x/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java Tue Feb 19 00:29:33 2008
@@ -22,7 +22,7 @@
import junit.framework.TestCase;
/**
- * FilenameParserTest
+ * FilenameParserTest
*
* @author <a href="mailto:joakime@apache.org">Joakim Erdfelt</a>
* @version $Id$
@@ -45,7 +45,7 @@
assertEquals( "archiva-1.0-beta-2-bin", parser.getName() );
assertEquals( "tar.gz", parser.getExtension() );
}
-
+
public void testNameExtensionTarBz2()
{
FilenameParser parser = new FilenameParser( "archiva-1.0-SNAPSHOT-src.tar.bz2" );
@@ -68,7 +68,7 @@
assertEquals( "maven-test-plugin-1.8.3", parser.getName() );
assertEquals( "jar", parser.getExtension() );
-
+
assertEquals( "maven", parser.next() );
assertEquals( "test", parser.next() );
assertEquals( "plugin", parser.next() );
@@ -87,7 +87,7 @@
assertEquals( "1.8.3", parser.expect( "1.8.3" ) );
assertNull( parser.expect( "jar" ) );
}
-
+
public void testExpectWithRemaining()
{
FilenameParser parser = new FilenameParser( "ganymede-ssh2-build250-sources.jar" );
@@ -99,10 +99,10 @@
assertEquals( "build250", parser.expect( "build250" ) );
assertEquals( '-', parser.seperator() );
assertEquals( "sources", parser.remaining() );
-
+
assertNull( parser.expect( "jar" ) );
}
-
+
public void testExpectWithRemainingDualExtensions()
{
FilenameParser parser = new FilenameParser( "example-presentation-3.2.xml.zip" );
@@ -114,31 +114,39 @@
assertEquals( "3.2", parser.expect( "3.2" ) );
assertEquals( '.', parser.seperator() );
assertEquals( "xml", parser.remaining() );
-
- }
-
+
+ }
+
public void testNextNonVersion()
{
FilenameParser parser = new FilenameParser( "maven-test-plugin-1.8.3.jar" );
-
- assertEquals("maven-test-plugin", parser.nextNonVersion() );
- assertEquals("1.8.3", parser.remaining() );
+
+ assertEquals( "maven-test-plugin", parser.nextNonVersion() );
+ assertEquals( "1.8.3", parser.remaining() );
}
-
+
public void testNextArbitraryNonVersion()
{
FilenameParser parser = new FilenameParser( "maven-jdk-1.4-plugin-1.0-20070828.123456-42.jar" );
-
- assertEquals("maven-jdk-1.4-plugin", parser.nextNonVersion() );
- assertEquals("1.0-20070828.123456-42", parser.remaining() );
+
+ assertEquals( "maven-jdk-1.4-plugin", parser.nextNonVersion() );
+ assertEquals( "1.0-20070828.123456-42", parser.remaining() );
}
public void testNextJython()
{
FilenameParser parser = new FilenameParser( "jython-20020827-no-oro.jar" );
-
- assertEquals("jython", parser.nextNonVersion() );
- assertEquals("20020827", parser.nextVersion() );
- assertEquals("no-oro", parser.remaining() );
+
+ assertEquals( "jython", parser.nextNonVersion() );
+ assertEquals( "20020827", parser.nextVersion() );
+ assertEquals( "no-oro", parser.remaining() );
+ }
+
+ public void testLongExtension()
+ {
+ FilenameParser parser = new FilenameParser( "libfobs4jmf-0.4.1.4-20080217.211715-4.jnilib" );
+
+ assertEquals( "libfobs4jmf-0.4.1.4-20080217.211715-4", parser.getName() );
+ assertEquals( "jnilib", parser.getExtension() );
}
}