You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bo...@apache.org on 2012/11/17 06:45:14 UTC

svn commit: r1410699 - /camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java

Author: boday
Date: Sat Nov 17 05:45:14 2012
New Revision: 1410699

URL: http://svn.apache.org/viewvc?rev=1410699&view=rev
Log:
CAMEL-5388 updated karaf context-info command to support mode parameter (--verbose) to show endpoint info (hidden by default now), added active/inactive route counts

Modified:
    camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java

Modified: camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java
URL: http://svn.apache.org/viewvc/camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java?rev=1410699&r1=1410698&r2=1410699&view=diff
==============================================================================
--- camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java (original)
+++ camel/trunk/platforms/karaf/commands/src/main/java/org/apache/camel/karaf/commands/ContextInfo.java Sat Nov 17 05:45:14 2012
@@ -19,6 +19,7 @@ package org.apache.camel.karaf.commands;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Set;
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
@@ -41,6 +42,9 @@ public class ContextInfo extends OsgiCom
     @Argument(index = 0, name = "name", description = "The name of the Camel context", required = true, multiValued = false)
     String name;
 
+    @Argument(index = 1, name = "mode", description = "Allows for different display modes (--verbose, etc)", required = false, multiValued = false)
+    String mode;
+
     private CamelController camelController;
 
     public void setCamelController(CamelController camelController) {
@@ -113,6 +117,21 @@ public class ContextInfo extends OsgiCom
                 Date lastExchangeCompletedTimestamp = (Date) lastExchangeCompletedTimestampObj;
                 System.out.println(StringEscapeUtils.unescapeJava("\tLast Exchange Completed Date: " + format.format(lastExchangeCompletedTimestamp)));
             }
+
+            long activeRoutes = 0;
+            long inactiveRoutes = 0;
+            List<Route> routeList = camelContext.getRoutes();
+            for (Route route : routeList) {
+                if (camelContext.getRouteStatus(route.getId()).isStarted()) {
+                    activeRoutes++;
+                } else {
+                    inactiveRoutes++;
+                }
+            }
+
+            System.out.println(StringEscapeUtils.unescapeJava("\tNumber of running routes: " + activeRoutes));
+            System.out.println(StringEscapeUtils.unescapeJava("\tNumber of not running routes: " + inactiveRoutes));
+
         }
 
         System.out.println("");
@@ -131,16 +150,21 @@ public class ContextInfo extends OsgiCom
         for (String component : camelContext.getComponentNames()) {
             System.out.println(StringEscapeUtils.unescapeJava("\t" + component));
         }
-        System.out.println("");
-        System.out.println(StringEscapeUtils.unescapeJava("\u001B[1mEndpoints\u001B[0m"));
-        for (Endpoint endpoint : camelContext.getEndpoints()) {
-            System.out.println(StringEscapeUtils.unescapeJava("\t" + endpoint.getEndpointUri()));
+
+        if (mode != null && mode.equals("--verbose")) {
+            System.out.println("");
+            System.out.println(StringEscapeUtils.unescapeJava("\u001B[1mEndpoints\u001B[0m"));
+            for (Endpoint endpoint : camelContext.getEndpoints()) {
+                System.out.println(StringEscapeUtils.unescapeJava("\t" + endpoint.getEndpointUri()));
+            }
         }
+
         System.out.println("");
         System.out.println(StringEscapeUtils.unescapeJava("\u001B[1mRoutes\u001B[0m"));
         for (Route route : camelContext.getRoutes()) {
             System.out.println(StringEscapeUtils.unescapeJava("\t" + route.getId()));
         }
+
         System.out.println("");
         System.out.println(StringEscapeUtils.unescapeJava("\u001B[1mUsed Languages\u001B[0m"));
         for (String language : camelContext.getLanguageNames()) {