CAMEL-8044: Camel commands should be more reusable for remote JVMs

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

Branch: refs/heads/master
Commit: 7970f839b2c0cf28f6a8e639cc191c7216f5ebc5
Parents: 51caf20
Author: Claus Ibsen <davscl...@apache.org>
Authored: Thu Dec 11 08:07:27 2014 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Thu Dec 11 08:07:27 2014 +0100

----------------------------------------------------------------------
 .../camel/commands/AbstractCamelController.java | 43 +++++++++++++++-----
 .../camel/commands/AbstractContextCommand.java  |  6 +--
 .../apache/camel/commands/CamelController.java  | 41 +++++++++++++++++++
 .../camel/commands/ComponentListCommand.java    |  6 +--
 .../camel/commands/ContextInfoCommand.java      | 13 ++++--
 .../camel/commands/ContextListCommand.java      | 18 ++++----
 .../camel/commands/ContextResumeCommand.java    |  6 +--
 .../camel/commands/ContextStartCommand.java     |  6 +--
 .../camel/commands/ContextStopCommand.java      |  6 +--
 .../camel/commands/ContextSuspendCommand.java   |  6 +--
 .../camel/commands/EndpointExplainCommand.java  |  5 +--
 .../camel/commands/EndpointListCommand.java     |  5 +--
 .../camel/commands/RestRegistryListCommand.java |  5 +--
 .../apache/camel/commands/RestShowCommand.java  |  8 ++--
 .../camel/commands/RouteResetStatsCommand.java  |  6 +--
 .../camel/commands/DummyCamelController.java    | 13 ++++++
 16 files changed, 128 insertions(+), 65 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractCamelController.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractCamelController.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractCamelController.java
index 8c90cca..98290d1 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractCamelController.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractCamelController.java
@@ -62,6 +62,34 @@ public abstract class AbstractCamelController implements 
CamelController {
         return null;
     }
 
+    public void startContext(String camelContextName) throws Exception {
+        CamelContext context = getCamelContext(camelContextName);
+        if (context != null) {
+            context.start();
+        }
+    }
+
+    public void stopContext(String camelContextName) throws Exception {
+        CamelContext context = getCamelContext(camelContextName);
+        if (context != null) {
+            context.stop();
+        }
+    }
+
+    public void suspendContext(String camelContextName) throws Exception {
+        CamelContext context = getCamelContext(camelContextName);
+        if (context != null) {
+            context.suspend();
+        }
+    }
+
+    public void resumeContext(String camelContextName) throws Exception {
+        CamelContext context = getCamelContext(camelContextName);
+        if (context != null) {
+            context.resume();
+        }
+    }
+
     public List<Map<String, String>> getRoutes(String camelContextName) throws 
Exception {
         return getRoutes(camelContextName, null);
     }
@@ -83,17 +111,10 @@ public abstract class AbstractCamelController implements 
CamelController {
                 }
             }
         } else {
-            List<CamelContext> camelContexts = this.getCamelContexts();
-            for (CamelContext camelContext : camelContexts) {
-                for (Route route : camelContext.getRoutes()) {
-                    if (filter == null || route.getId().matches(filter)) {
-                        Map<String, String> row = new LinkedHashMap<String, 
String>();
-                        row.put("camelContextName", camelContext.getName());
-                        row.put("routeId", route.getId());
-                        row.put("state", getRouteState(route));
-                        answer.add(row);
-                    }
-                }
+            List<Map<String, String>> camelContexts = this.getCamelContexts2();
+            for (Map<String, String> row : camelContexts) {
+                List<Map<String, String>> routes = getRoutes(row.get("name"), 
filter);
+                answer.addAll(routes);
             }
         }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractContextCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractContextCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractContextCommand.java
index 7212b15..93eb53f 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractContextCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/AbstractContextCommand.java
@@ -46,7 +46,7 @@ public abstract class AbstractContextCommand extends 
AbstractCamelCommand {
         ClassLoader oldClassloader = 
Thread.currentThread().getContextClassLoader();
         
Thread.currentThread().setContextClassLoader(camelContext.getApplicationContextClassLoader());
         try {
-            return performContextCommand(camelController, camelContext, out, 
err);
+            return performContextCommand(camelController, 
camelContext.getName(), out, err);
         } finally {
             Thread.currentThread().setContextClassLoader(oldClassloader);
         }
@@ -56,12 +56,12 @@ public abstract class AbstractContextCommand extends 
AbstractCamelCommand {
      * Perform Context-specific command
      *
      * @param camelController the Camel controller
-     * @param camelContext    non-null {@link CamelContext}
+     * @param contextName     the Camel context name
      * @param out             the output printer stream
      * @param err             the error print stream
      * @return response from command, or <tt>null</tt> if nothing to return
      * @throws Exception is thrown if error executing command
      */
-    protected abstract Object performContextCommand(CamelController 
camelController, CamelContext camelContext, PrintStream out, PrintStream err) 
throws Exception;
+    protected abstract Object performContextCommand(CamelController 
camelController, String contextName, PrintStream out, PrintStream err) throws 
Exception;
 
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/CamelController.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/CamelController.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/CamelController.java
index b30fee7..7929f88 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/CamelController.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/CamelController.java
@@ -52,6 +52,47 @@ public interface CamelController {
     CamelContext getCamelContext(String name) throws Exception;
 
     /**
+     * Get the list of Camel context.
+     *
+     * @return a list of key/value pairs with CamelContext information
+     * @throws java.lang.Exception can be thrown
+     */
+    // TODO: rename
+    List<Map<String, String>> getCamelContexts2() throws Exception;
+
+    /**
+     * Starts the given Camel context.
+     *
+     * @param camelContextName the Camel context.
+     * @throws java.lang.Exception can be thrown
+     */
+    void startContext(String camelContextName) throws Exception;
+
+    /**
+     * Stops the given Camel context.
+     *
+     * @param camelContextName the Camel context.
+     * @throws java.lang.Exception can be thrown
+     */
+    void stopContext(String camelContextName) throws Exception;
+
+    /**
+     * Suspends the given Camel context.
+     *
+     * @param camelContextName the Camel context.
+     * @throws java.lang.Exception can be thrown
+     */
+    void suspendContext(String camelContextName) throws Exception;
+
+    /**
+     * Resumes the given Camel context.
+     *
+     * @param camelContextName the Camel context.
+     * @throws java.lang.Exception can be thrown
+     */
+    void resumeContext(String camelContextName) throws Exception;
+
+    /**
      * Get all routes. If Camel context name is null, all routes from all 
contexts are listed.
      *
      * @param camelContextName the Camel context name. If null, all contexts 
are considered.

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ComponentListCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ComponentListCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ComponentListCommand.java
index b8599aa..bd02d2c 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ComponentListCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ComponentListCommand.java
@@ -21,8 +21,6 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.camel.CamelContext;
-
 /**
  * List all the Camel components that are currently used/loaded in the JVM.
  */
@@ -51,8 +49,8 @@ public class ComponentListCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        List<Map<String, String>> components = 
camelController.listComponents(context);
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        List<Map<String, String>> components = 
camelController.listComponents(contextName);
 
         if (components == null || components.isEmpty()) {
             return null;

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextInfoCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextInfoCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextInfoCommand.java
index 9df1f8a..3a83bec 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextInfoCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextInfoCommand.java
@@ -36,17 +36,19 @@ import static 
org.apache.camel.util.UnitUtils.printUnitFromBytes;
 /**
  * Command to display detailed information about a given {@link 
org.apache.camel.CamelContext}.
  */
-public class ContextInfoCommand extends AbstractContextCommand {
+public class ContextInfoCommand extends AbstractCamelCommand {
 
     private StringEscape stringEscape;
+    private String context;
     private String mode;
 
+
     /**
      * @param context The name of the Camel context
      * @param mode Allows for different display modes (--verbose, etc)
      */
     public ContextInfoCommand(String context, String mode) {
-        super(context);
+        this.context = context;
         this.mode = mode;
     }
 
@@ -58,7 +60,12 @@ public class ContextInfoCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
+    public Object execute(CamelController camelController, PrintStream out, 
PrintStream err) throws Exception {
+        CamelContext camelContext = camelController.getCamelContext(context);
+        if (camelContext == null) {
+            err.println("Camel context " + context + " not found.");
+            return null;
+        }
 
         out.println(stringEscape.unescapeJava("\u001B[1m\u001B[33mCamel 
Context " + context + "\u001B[0m"));
         out.println(stringEscape.unescapeJava("\tName: " + 
camelContext.getName()));

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextListCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextListCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextListCommand.java
index 3c1ab83..6b66ecd 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextListCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextListCommand.java
@@ -21,8 +21,6 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to list all {@link org.apache.camel.CamelContext} in the JVM.
  */
@@ -42,7 +40,7 @@ public class ContextListCommand extends AbstractCamelCommand {
 
     @Override
     public Object execute(CamelController camelController, PrintStream out, 
PrintStream err) throws Exception {
-        final List<CamelContext> camelContexts = 
camelController.getCamelContexts();
+        final List<Map<String, String>> camelContexts = 
camelController.getCamelContexts2();
 
         final Map<String, Integer> columnWidths = 
computeColumnWidths(camelContexts);
         final String headerFormat = buildFormatString(columnWidths, true);
@@ -51,15 +49,15 @@ public class ContextListCommand extends 
AbstractCamelCommand {
         if (camelContexts.size() > 0) {
             out.println(String.format(headerFormat, CONTEXT_COLUMN_LABEL, 
STATUS_COLUMN_LABEL, UPTIME_COLUMN_LABEL));
             out.println(String.format(headerFormat, "-------", "------", 
"------"));
-            for (final CamelContext camelContext : camelContexts) {
-                out.println(String.format(rowFormat, camelContext.getName(), 
camelContext.getStatus(), camelContext.getUptime()));
+            for (Map<String, String> row : camelContexts) {
+                out.println(String.format(rowFormat, row.get("name"), 
row.get("state"), row.get("updtime")));
             }
         }
 
         return null;
     }
 
-    private static Map<String, Integer> computeColumnWidths(final 
Iterable<CamelContext> camelContexts) throws Exception {
+    private static Map<String, Integer> computeColumnWidths(final 
Iterable<Map<String, String>> camelContexts) throws Exception {
         if (camelContexts == null) {
             throw new IllegalArgumentException("Unable to determine column 
widths from null Iterable<CamelContext>");
         } else {
@@ -67,14 +65,14 @@ public class ContextListCommand extends 
AbstractCamelCommand {
             int maxStatusLen = 0;
             int maxUptimeLen = 0;
 
-            for (final CamelContext camelContext : camelContexts) {
-                final String name = camelContext.getName();
+            for (Map<String, String> row : camelContexts) {
+                final String name = row.get("name");
                 maxNameLen = java.lang.Math.max(maxNameLen, name == null ? 0 : 
name.length());
 
-                final String status = camelContext.getStatus().toString();
+                final String status = row.get("state");
                 maxStatusLen = java.lang.Math.max(maxStatusLen, status == null 
? 0 : status.length());
 
-                final String uptime = camelContext.getUptime();
+                final String uptime = row.get("uptime");
                 maxUptimeLen = java.lang.Math.max(maxUptimeLen, uptime == null 
? 0 : uptime.length());
             }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextResumeCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextResumeCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextResumeCommand.java
index 83efee6..e3154e5 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextResumeCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextResumeCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to resume a Camel context.
  */
@@ -30,8 +28,8 @@ public class ContextResumeCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        camelContext.resume();
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        camelController.resumeContext(contextName);
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStartCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStartCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStartCommand.java
index 649da3c..48a65fd 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStartCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStartCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to start a Camel context.
  */
@@ -30,8 +28,8 @@ public class ContextStartCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        camelContext.start();
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        camelController.startContext(contextName);
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStopCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStopCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStopCommand.java
index 8eed8b1..2be409a 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStopCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextStopCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to stop a Camel context.
  */
@@ -30,8 +28,8 @@ public class ContextStopCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        camelContext.stop();
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        camelController.stopContext(contextName);
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextSuspendCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextSuspendCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextSuspendCommand.java
index 9d2eb1b..5d20833 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextSuspendCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ContextSuspendCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to suspend a Camel context.
  */
@@ -30,8 +28,8 @@ public class ContextSuspendCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        camelContext.suspend();
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        camelController.resumeContext(contextName);
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
index dcf8e4c..2713b2a 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointExplainCommand.java
@@ -23,7 +23,6 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.camel.CamelContext;
 import org.apache.camel.util.EndpointHelper;
 import org.apache.camel.util.JsonSchemaHelper;
 import org.apache.camel.util.URISupport;
@@ -43,8 +42,8 @@ public class EndpointExplainCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        List<Map<String, String>> endpoints = 
camelController.getEndpoints(context);
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        List<Map<String, String>> endpoints = 
camelController.getEndpoints(contextName);
         if (endpoints == null || endpoints.isEmpty()) {
             return null;
         }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointListCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointListCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointListCommand.java
index 9c3e88d..e8521ad 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointListCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointListCommand.java
@@ -24,7 +24,6 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.camel.CamelContext;
 import org.apache.camel.util.JsonSchemaHelper;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.URISupport;
@@ -59,8 +58,8 @@ public class EndpointListCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        List<Map<String, String>> endpoints = 
camelController.getEndpoints(context);
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        List<Map<String, String>> endpoints = 
camelController.getEndpoints(contextName);
 
         final Map<String, Integer> columnWidths = 
computeColumnWidths(endpoints);
         final String headerFormat = buildFormatString(columnWidths, true);

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestRegistryListCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestRegistryListCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestRegistryListCommand.java
index 6b951de..a133119 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestRegistryListCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestRegistryListCommand.java
@@ -22,7 +22,6 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.camel.CamelContext;
 import org.apache.camel.util.URISupport;
 
 /**
@@ -57,8 +56,8 @@ public class RestRegistryListCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        List<Map<String, String>> services = 
camelController.getRestServices(context);
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        List<Map<String, String>> services = 
camelController.getRestServices(contextName);
         if (services.isEmpty()) {
             out.print("There are no REST services");
             return null;

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestShowCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestShowCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestShowCommand.java
index 328fa0d..e2d3ea6 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestShowCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RestShowCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to show the REST marshaled in XML.
  */
@@ -30,10 +28,10 @@ public class RestShowCommand extends AbstractContextCommand 
{
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        String xml = camelController.getRestModelAsXml(context);
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        String xml = camelController.getRestModelAsXml(contextName);
         if (xml == null) {
-            out.println("There are no REST services in CamelContext with name: 
" + context);
+            out.println("There are no REST services in CamelContext with name: 
" + contextName);
             return null;
         }
         out.println(xml);

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RouteResetStatsCommand.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RouteResetStatsCommand.java
 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RouteResetStatsCommand.java
index cfc415c..535db71 100644
--- 
a/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RouteResetStatsCommand.java
+++ 
b/platforms/commands/commands-core/src/main/java/org/apache/camel/commands/RouteResetStatsCommand.java
@@ -18,8 +18,6 @@ package org.apache.camel.commands;
 
 import java.io.PrintStream;
 
-import org.apache.camel.CamelContext;
-
 /**
  * Command to reset route stats.
  */
@@ -30,8 +28,8 @@ public class RouteResetStatsCommand extends 
AbstractContextCommand {
     }
 
     @Override
-    protected Object performContextCommand(CamelController camelController, 
CamelContext camelContext, PrintStream out, PrintStream err) throws Exception {
-        camelController.resetRouteStats(camelContext.getName());
+    protected Object performContextCommand(CamelController camelController, 
String contextName, PrintStream out, PrintStream err) throws Exception {
+        camelController.resetRouteStats(contextName);
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/7970f839/platforms/commands/commands-core/src/test/java/org/apache/camel/commands/DummyCamelController.java
----------------------------------------------------------------------
diff --git 
a/platforms/commands/commands-core/src/test/java/org/apache/camel/commands/DummyCamelController.java
 
b/platforms/commands/commands-core/src/test/java/org/apache/camel/commands/DummyCamelController.java
index b13efc4..12f2d7d 100644
--- 
a/platforms/commands/commands-core/src/test/java/org/apache/camel/commands/DummyCamelController.java
+++ 
b/platforms/commands/commands-core/src/test/java/org/apache/camel/commands/DummyCamelController.java
@@ -17,7 +17,9 @@
 package org.apache.camel.commands;
 
 import java.util.ArrayList;
+import java.util.LinkedHashMap;
 import java.util.List;
+import java.util.Map;
 
 import org.apache.camel.CamelContext;
 
@@ -35,4 +37,15 @@ public class DummyCamelController extends 
AbstractCamelController {
         answer.add(camelContext);
         return answer;
     }
+
+    @Override
+    public List<Map<String, String>> getCamelContexts2() throws Exception {
+        List<Map<String, String>> answer = new ArrayList<Map<String, 
String>>(1);
+        Map<String, String> row = new LinkedHashMap<String, String>();
+        row.put("name", camelContext.getName());
+        row.put("state", camelContext.getStatus().name());
+        row.put("uptime", camelContext.getUptime());
+        answer.add(row);
+        return answer;
+    }
 }

Reply via email to