Updated Branches:
  refs/heads/karaf-2.x 99e69c3f8 -> bc7faa640

KARAF-2691 Adding pid to session


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

Branch: refs/heads/karaf-2.x
Commit: ff1bf16dc7d66a513211cb5e919a33b46e490019
Parents: 99e69c3
Author: Christian Schneider <[email protected]>
Authored: Wed Jan 22 15:33:39 2014 +0100
Committer: Christian Schneider <[email protected]>
Committed: Wed Jan 22 15:33:39 2014 +0100

----------------------------------------------------------------------
 .../apache/karaf/shell/console/jline/ConsoleFactory.java  | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/ff1bf16d/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
----------------------------------------------------------------------
diff --git 
a/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
 
b/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
index 9ab6182..a7af22c 100644
--- 
a/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
+++ 
b/shell/console/src/main/java/org/apache/karaf/shell/console/jline/ConsoleFactory.java
@@ -22,15 +22,18 @@ import java.io.InputStream;
 import java.io.ObjectInputStream;
 import java.io.OutputStream;
 import java.io.PrintStream;
+import java.lang.management.ManagementFactory;
 import java.lang.reflect.Method;
 import java.net.URL;
 import java.security.KeyPair;
 import java.nio.charset.Charset;
 import java.security.PrivilegedExceptionAction;
 import java.util.List;
+
 import javax.security.auth.Subject;
 
 import jline.Terminal;
+
 import org.apache.felix.service.command.CommandProcessor;
 import org.apache.felix.service.command.CommandSession;
 import org.apache.felix.service.command.Function;
@@ -175,6 +178,7 @@ public class ConsoleFactory {
             session.put("LC_CTYPE", ctype);
         }
         session.put(".jline.terminal", terminal);
+        session.put("pid", getPid());
 
         registration = bundleContext.registerService(CommandSession.class, 
session, null);
 
@@ -185,6 +189,12 @@ public class ConsoleFactory {
             new Thread(this.console, "Karaf Shell Console Thread").start();
         }
     }
+    
+    private String getPid() {
+        String name = ManagementFactory.getRuntimeMXBean().getName();
+        String[] parts = name.split("@");
+        return parts[0];
+    }
 
     protected void stop() throws Exception {
         if (registration != null) {

Reply via email to