Author: cziegeler
Date: Fri Aug 4 12:01:23 2017
New Revision: 1804107
URL: http://svn.apache.org/viewvc?rev=1804107&view=rev
Log:
Support versions with dots in qualifier
Modified:
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/ArtifactId.java
sling/whiteboard/cziegeler/feature/src/test/java/org/apache/sling/feature/ArtifactIdTest.java
Modified:
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/ArtifactId.java
URL:
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/ArtifactId.java?rev=1804107&r1=1804106&r2=1804107&view=diff
==============================================================================
---
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/ArtifactId.java
(original)
+++
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/ArtifactId.java
Fri Aug 4 12:01:23 2017
@@ -260,6 +260,13 @@ public class ArtifactId implements Compa
parts = newParts;
}
}
+ if ( parts.length >= 4 ) {
+ final int pos = parts[2].indexOf('-');
+ if ( pos != -1 ) {
+ parts[3] = parts[2].substring(pos + 1) + "." + parts[3];
+ parts[2] = parts[2].substring(0, pos);
+ }
+ }
if ( parts.length > 4 ) {
final StringBuilder sb = new StringBuilder(parts[3]);
for(int i=4; i<parts.length;i++) {
Modified:
sling/whiteboard/cziegeler/feature/src/test/java/org/apache/sling/feature/ArtifactIdTest.java
URL:
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature/src/test/java/org/apache/sling/feature/ArtifactIdTest.java?rev=1804107&r1=1804106&r2=1804107&view=diff
==============================================================================
---
sling/whiteboard/cziegeler/feature/src/test/java/org/apache/sling/feature/ArtifactIdTest.java
(original)
+++
sling/whiteboard/cziegeler/feature/src/test/java/org/apache/sling/feature/ArtifactIdTest.java
Fri Aug 4 12:01:23 2017
@@ -16,11 +16,11 @@
*/
package org.apache.sling.feature;
-import org.junit.Test;
-
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import org.junit.Test;
+
public class ArtifactIdTest {
private static final String G = "g";
@@ -103,4 +103,13 @@ public class ArtifactIdTest {
assertEquals(2, v.getMicro());
assertEquals("SNAPSHOT", v.getQualifier());
}
+
+ @Test
+ public void testStrangeVersions() {
+ final Version v = new ArtifactId(G, A, "3.0.3-20170712.062549-4",
null, null).getOSGiVersion();
+ assertEquals(3, v.getMajor());
+ assertEquals(0, v.getMinor());
+ assertEquals(3, v.getMicro());
+ assertEquals("20170712_062549-4", v.getQualifier());
+ }
}