You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2012/04/06 11:20:09 UTC

svn commit: r1310256 - in /karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi: RestartBundle.java StartBundle.java StopBundle.java

Author: gnodet
Date: Fri Apr  6 09:20:08 2012
New Revision: 1310256

URL: http://svn.apache.org/viewvc?rev=1310256&view=rev
Log:
[KARAF-1040] Commands should not catch exceptions but should rethrow them


Conflicts:

	shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java
	shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java
	shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java

Modified:
    karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java
    karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java
    karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java

Modified: karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java?rev=1310256&r1=1310255&r2=1310256&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java (original)
+++ karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/RestartBundle.java Fri Apr  6 09:20:08 2012
@@ -16,8 +16,10 @@
  */
 package org.apache.karaf.shell.osgi;
 
+import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.karaf.shell.console.MultiException;
 import org.osgi.framework.Bundle;
 import org.apache.felix.gogo.commands.Command;
 
@@ -25,14 +27,22 @@ import org.apache.felix.gogo.commands.Co
 public class RestartBundle extends BundlesCommand {
 
     protected void doExecute(List<Bundle> bundles) throws Exception {
+        List<Exception> exceptions = new ArrayList<Exception>();
         for (Bundle bundle : bundles) {
             try {
                 bundle.stop();
+            } catch (Exception e) {
+                exceptions.add(new Exception("Unable to stop bundle " + bundle.getBundleId()));
+            }
+        }
+        for (Bundle bundle : bundles) {
+            try {
                 bundle.start();
             } catch (Exception e) {
-                System.err.println(e.toString());
+                exceptions.add(new Exception("Unable to start bundle " + bundle.getBundleId()));
             }
         }
+        MultiException.throwIf("Error restarting bundles", exceptions);
     }
 
 }

Modified: karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java?rev=1310256&r1=1310255&r2=1310256&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java (original)
+++ karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StartBundle.java Fri Apr  6 09:20:08 2012
@@ -16,8 +16,10 @@
  */
 package org.apache.karaf.shell.osgi;
 
+import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.karaf.shell.console.MultiException;
 import org.osgi.framework.Bundle;
 import org.apache.felix.gogo.commands.Command;
 
@@ -25,13 +27,15 @@ import org.apache.felix.gogo.commands.Co
 public class StartBundle extends BundlesCommand {
     
     protected void doExecute(List<Bundle> bundles) throws Exception {
+        List<Exception> exceptions = new ArrayList<Exception>();
         for (Bundle bundle : bundles) {
             try {
                 bundle.start();
             } catch (Exception e) {
-                System.err.println(e.toString());
+                exceptions.add(new Exception("Unable to start bundle " + bundle.getBundleId()));
             }
         }
+        MultiException.throwIf("Error starting bundles", exceptions);
     }
 
 }

Modified: karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java?rev=1310256&r1=1310255&r2=1310256&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java (original)
+++ karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/StopBundle.java Fri Apr  6 09:20:08 2012
@@ -16,8 +16,10 @@
  */
 package org.apache.karaf.shell.osgi;
 
+import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.karaf.shell.console.MultiException;
 import org.osgi.framework.Bundle;
 import org.apache.felix.gogo.commands.Command;
 
@@ -25,13 +27,15 @@ import org.apache.felix.gogo.commands.Co
 public class StopBundle extends BundlesCommand {
 	
 	protected void doExecute(List<Bundle> bundles) throws Exception {
+        List<Exception> exceptions = new ArrayList<Exception>();
         for (Bundle bundle : bundles) {
             try {
                 bundle.stop();
             } catch (Exception e) {
-                System.err.println(e.toString());
+                exceptions.add(new Exception("Unable to stop bundle " + bundle.getBundleId()));
             }
         }
+        MultiException.throwIf("Error stopping bundles", exceptions);
     }
 
 }