You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2018/08/02 12:44:06 UTC

[camel] 02/03: CAMEL-12705: Fixed camel-catalog syntax parser issue with hostname and dots such as when parsing the netty4-http endpoints.

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch camel-2.22.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit f9de67bae9c597dacdb2ce21797a4082a4040bb9
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Aug 2 14:06:57 2018 +0200

    CAMEL-12705: Fixed camel-catalog syntax parser issue with hostname and dots such as when parsing the netty4-http endpoints.
---
 .../java/org/apache/camel/runtimecatalog/AbstractCamelCatalog.java    | 4 ++--
 .../src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java  | 4 ++--
 .../src/test/java/org/apache/camel/catalog/CamelCatalogTest.java      | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/camel-core/src/main/java/org/apache/camel/runtimecatalog/AbstractCamelCatalog.java b/camel-core/src/main/java/org/apache/camel/runtimecatalog/AbstractCamelCatalog.java
index 70fe5ef..3e58ce4 100644
--- a/camel-core/src/main/java/org/apache/camel/runtimecatalog/AbstractCamelCatalog.java
+++ b/camel-core/src/main/java/org/apache/camel/runtimecatalog/AbstractCamelCatalog.java
@@ -66,7 +66,7 @@ public abstract class AbstractCamelCatalog {
 
     // CHECKSTYLE:OFF
 
-    private static final Pattern SYNTAX_PATTERN = Pattern.compile("(\\w+)");
+    private static final Pattern SYNTAX_PATTERN = Pattern.compile("([\\w.]+)");
     private static final Pattern COMPONENT_SYNTAX_PARSER = Pattern.compile("([^\\w-]*)([\\w-]+)");
 
     private SuggestionStrategy suggestionStrategy;
@@ -938,7 +938,7 @@ public abstract class AbstractCamelCatalog {
             // oh darn some options is missing, so we need a complex way of building the uri
 
             // the tokens between the options in the path
-            String[] tokens = syntax.split("\\w+");
+            String[] tokens = syntax.split("[\\w.]+");
 
             // parse the syntax into each options
             Matcher matcher = SYNTAX_PATTERN.matcher(originalSyntax);
diff --git a/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java b/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
index 2e82e74..a85dcf6 100644
--- a/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
+++ b/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
@@ -66,7 +66,7 @@ public abstract class AbstractCamelCatalog {
 
     // CHECKSTYLE:OFF
 
-    private static final Pattern SYNTAX_PATTERN = Pattern.compile("(\\w+)");
+    private static final Pattern SYNTAX_PATTERN = Pattern.compile("([\\w.]+)");
     private static final Pattern COMPONENT_SYNTAX_PARSER = Pattern.compile("([^\\w-]*)([\\w-]+)");
 
     private SuggestionStrategy suggestionStrategy;
@@ -938,7 +938,7 @@ public abstract class AbstractCamelCatalog {
             // oh darn some options is missing, so we need a complex way of building the uri
 
             // the tokens between the options in the path
-            String[] tokens = syntax.split("\\w+");
+            String[] tokens = syntax.split("[\\w.]+");
 
             // parse the syntax into each options
             Matcher matcher = SYNTAX_PATTERN.matcher(originalSyntax);
diff --git a/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java b/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
index f59b4fb..7ba5a05 100644
--- a/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
+++ b/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
@@ -1182,11 +1182,11 @@ public class CamelCatalogTest {
     }
 
     @Test
-    @Ignore("CAMEL-12705") // TODO: Fix this bug
     public void testNetty4Http4DynamicToIssue() throws Exception {
         String uri = "netty4-http:http://10.192.1.10:8080/client/alerts/summary?throwExceptionOnFailure=false";
         Map<String, String> params = catalog.endpointProperties(uri);
         params.remove("path");
+        params.remove("throwExceptionOnFailure");
 
         String resolved = catalog.asEndpointUri("netty4-http", params, false);
         assertEquals("netty4-http:http:10.192.1.10:8080", resolved);