Add karaf commands to explain endpoints

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/4b218f18
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/4b218f18
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/4b218f18

Branch: refs/heads/master
Commit: 4b218f18dc38ef7a0404eb522018445fae322d9d
Parents: fa7ad2c
Author: Claus Ibsen <davscl...@apache.org>
Authored: Fri Nov 7 13:27:49 2014 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Fri Nov 7 13:33:52 2014 +0100

----------------------------------------------------------------------
 .../camel/karaf/commands/EndpointExplain.java   | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/4b218f18/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/EndpointExplain.java
----------------------------------------------------------------------
diff --git 
a/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/EndpointExplain.java
 
b/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/EndpointExplain.java
index 55d63b0..895083f 100644
--- 
a/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/EndpointExplain.java
+++ 
b/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/EndpointExplain.java
@@ -24,6 +24,7 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.Endpoint;
+import org.apache.camel.util.EndpointHelper;
 import org.apache.camel.util.JsonSchemaHelper;
 import org.apache.camel.util.URISupport;
 import org.apache.felix.gogo.commands.Argument;
@@ -43,9 +44,9 @@ public class EndpointExplain extends CamelCommandSupport {
             required = false, multiValued = false, valueToShowInHelp = "false")
     boolean verbose;
 
-    @Option(name = "--scheme", aliases = "-s", description = "To filter 
endpoints by scheme",
-            required = false, multiValued = true)
-    String[] schemes;
+    @Option(name = "--filter", aliases = "-f", description = "To filter 
endpoints by pattern",
+            required = false, multiValued = false)
+    String filter;
 
     protected Object doExecute() throws Exception {
         List<Endpoint> endpoints = camelController.getEndpoints(name);
@@ -53,18 +54,13 @@ public class EndpointExplain extends CamelCommandSupport {
             return null;
         }
 
-        // filter endpoints by scheme
-        if (schemes != null && schemes.length > 0) {
+        // filter endpoints
+        if (filter != null) {
             Iterator<Endpoint> it = endpoints.iterator();
             while (it.hasNext()) {
                 Endpoint endpoint = it.next();
-                boolean match = false;
-                for (String scheme : schemes) {
-                    if (endpoint.getEndpointUri().startsWith(scheme)) {
-                        match = true;
-                    }
-                }
-                if (!match) {
+                if (!EndpointHelper.matchPattern(endpoint.getEndpointUri(), 
filter)) {
+                    // did not match
                     it.remove();
                 }
             }

Reply via email to