You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2016/05/01 12:56:17 UTC

[15/50] [abbrv] maven-aether git commit: Bug 436290 - Trim whitespace from id/type list strings in DefaultMirrorSelector

Bug 436290 - Trim whitespace from id/type list strings in DefaultMirrorSelector


Project: http://git-wip-us.apache.org/repos/asf/maven-aether/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-aether/commit/93310af9
Tree: http://git-wip-us.apache.org/repos/asf/maven-aether/tree/93310af9
Diff: http://git-wip-us.apache.org/repos/asf/maven-aether/diff/93310af9

Branch: refs/heads/master
Commit: 93310af9fbeee588555148145ee3c5f560a3bb34
Parents: c9aeca7
Author: Benjamin Bentmann <be...@sonatype.com>
Authored: Sat May 31 17:20:09 2014 +0200
Committer: Benjamin Bentmann <be...@sonatype.com>
Committed: Sat May 31 17:20:09 2014 +0200

----------------------------------------------------------------------
 .../util/repository/DefaultMirrorSelector.java  | 12 ++++++------
 .../repository/DefaultMirrorSelectorTest.java   | 20 ++++++++++++++++++++
 2 files changed, 26 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-aether/blob/93310af9/aether-util/src/main/java/org/eclipse/aether/util/repository/DefaultMirrorSelector.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/repository/DefaultMirrorSelector.java b/aether-util/src/main/java/org/eclipse/aether/util/repository/DefaultMirrorSelector.java
index b5ad2b2..a0f9a3b 100644
--- a/aether-util/src/main/java/org/eclipse/aether/util/repository/DefaultMirrorSelector.java
+++ b/aether-util/src/main/java/org/eclipse/aether/util/repository/DefaultMirrorSelector.java
@@ -40,12 +40,12 @@ public final class DefaultMirrorSelector
      * @param type The content type of the mirror, may be {@code null}.
      * @param repositoryManager A flag whether the mirror is a repository manager or a simple server.
      * @param mirrorOfIds The identifier(s) of remote repositories to mirror, may be {@code null}. Multiple identifiers
-     *            can be separated by comma (',') and additionally the wildcards "*" and "external:*" can be used to
-     *            match all (external) repositories, prefixing a repo id with an exclamation mark allows to express an
-     *            exclusion. For example "external:*,!central".
+     *            can be separated by comma (',') and surrounding whitespace is trimmed. Additionally the wildcards "*"
+     *            and "external:*" can be used to match all (external) repositories, prefixing a repo id with an
+     *            exclamation mark allows to express an exclusion. For example "external:*,!central".
      * @param mirrorOfTypes The content type(s) of remote repositories to mirror, may be {@code null} or empty to match
-     *            any content type. Multiple types can be separated by comma (','), the wildcard "*" and the "!"
-     *            negation syntax are also supported. For example "*,!p2".
+     *            any content type. Multiple types can be separated by comma (',') and surrounding whitespace is
+     *            trimmed. The wildcard "*" and the "!" negation syntax are also supported. For example "*,!p2".
      * @return This selector for chaining, never {@code null}.
      */
     public DefaultMirrorSelector add( String id, String url, String type, boolean repositoryManager,
@@ -137,7 +137,7 @@ public final class DefaultMirrorSelector
         List<String> tokens = null;
         if ( list != null )
         {
-            tokens = Arrays.asList( list.split( "," ) );
+            tokens = Arrays.asList( list.trim().split( "\\s*,\\s*" ) );
         }
         return tokens;
     }

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/93310af9/aether-util/src/test/java/org/eclipse/aether/util/repository/DefaultMirrorSelectorTest.java
----------------------------------------------------------------------
diff --git a/aether-util/src/test/java/org/eclipse/aether/util/repository/DefaultMirrorSelectorTest.java b/aether-util/src/test/java/org/eclipse/aether/util/repository/DefaultMirrorSelectorTest.java
index b73c812..fd5aea4 100644
--- a/aether-util/src/test/java/org/eclipse/aether/util/repository/DefaultMirrorSelectorTest.java
+++ b/aether-util/src/test/java/org/eclipse/aether/util/repository/DefaultMirrorSelectorTest.java
@@ -81,6 +81,16 @@ public class DefaultMirrorSelectorTest
     }
 
     @Test
+    public void testMatchesType_Trimming()
+    {
+        assertEquals( true, matchesType( "any", " " ) );
+        assertEquals( true, matchesType( "default", " default " ) );
+        assertEquals( true, matchesType( "default", "foo, default ,bar" ) );
+        assertEquals( true, matchesType( "default", " default ,bar" ) );
+        assertEquals( true, matchesType( "default", "foo, default " ) );
+    }
+
+    @Test
     public void testMatchesPattern()
     {
         assertEquals( false, matchesPattern( newRepo( "id", "type", "url" ), null ) );
@@ -103,6 +113,16 @@ public class DefaultMirrorSelectorTest
     }
 
     @Test
+    public void testMatchesPattern_Trimming()
+    {
+        assertEquals( false, matchesPattern( newRepo( "central", "type", "url" ), " " ) );
+        assertEquals( true, matchesPattern( newRepo( "central", "type", "url" ), " central " ) );
+        assertEquals( true, matchesPattern( newRepo( "central", "type", "url" ), "foo, central ,bar" ) );
+        assertEquals( true, matchesPattern( newRepo( "central", "type", "url" ), " central ,bar" ) );
+        assertEquals( true, matchesPattern( newRepo( "central", "type", "url" ), "foo, central " ) );
+    }
+
+    @Test
     public void testGetMirror_FirstMatchWins()
     {
         DefaultMirrorSelector selector = new DefaultMirrorSelector();