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/08/01 22:00:20 UTC
svn commit: r1368224 - in
/karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline:
Console.java ConsoleFactory.java
Author: gnodet
Date: Wed Aug 1 20:00:20 2012
New Revision: 1368224
URL: http://svn.apache.org/viewvc?rev=1368224&view=rev
Log:
[KARAF-1702] Stopping the console bundle should not shutdown the osgi framework
Conflicts:
shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java
Conflicts:
shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
Modified:
karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java
karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
Modified: karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java?rev=1368224&r1=1368223&r2=1368224&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java (original)
+++ karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/Console.java Wed Aug 1 20:00:20 2012
@@ -26,7 +26,6 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.InterruptedIOException;
import java.io.PrintStream;
-import java.io.PrintWriter;
import java.io.Reader;
import java.util.Map;
import java.util.Properties;
@@ -38,7 +37,6 @@ import java.util.regex.Pattern;
import jline.Terminal;
import jline.UnsupportedTerminal;
import jline.console.ConsoleReader;
-import jline.console.history.FileHistory;
import jline.console.history.PersistentHistory;
import org.apache.felix.gogo.commands.CommandException;
import org.apache.felix.gogo.runtime.CommandNotFoundException;
@@ -133,8 +131,11 @@ public class Console implements Runnable
return session;
}
- public void close() {
+ public void close(boolean closedByUser) {
//System.err.println("Closing");
+ if (!running) {
+ return;
+ }
if (reader.getHistory() instanceof PersistentHistory) {
try {
((PersistentHistory) reader.getHistory()).flush();
@@ -145,6 +146,9 @@ public class Console implements Runnable
running = false;
CommandSessionHolder.unset();
pipe.interrupt();
+ if (closedByUser && closeCallback != null) {
+ closeCallback.run();
+ }
}
public void run()
@@ -180,7 +184,7 @@ public class Console implements Runnable
logException(t);
}
}
- close();
+ close(true);
//System.err.println("Exiting console...");
if (closeCallback != null)
{
Modified: karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java?rev=1368224&r1=1368223&r2=1368224&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java (original)
+++ karaf/branches/karaf-2.3.x/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java Wed Aug 1 20:00:20 2012
@@ -176,8 +176,11 @@ public class ConsoleFactory {
if (registration != null) {
registration.unregister();
}
+ // The bundle is stopped
+ // so close the console and remove the callback so that the
+ // osgi framework isn't stopped
if (console != null) {
- console.close();
+ console.close(false);
}
}