Repository: karaf
Updated Branches:
  refs/heads/karaf-2.3.x 8f7d9edf7 -> dfeefb8b8


[KARAF-2992] Generate the shutdown command at first boot


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

Branch: refs/heads/karaf-2.3.x
Commit: dfeefb8b8463f59b3da6164834f1014f79dafdf3
Parents: 8f7d9ed
Author: Guillaume Nodet <gno...@gmail.com>
Authored: Tue May 20 15:18:11 2014 +0200
Committer: Guillaume Nodet <gno...@gmail.com>
Committed: Tue May 20 15:35:12 2014 +0200

----------------------------------------------------------------------
 main/src/main/java/org/apache/karaf/main/Main.java | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/dfeefb8b/main/src/main/java/org/apache/karaf/main/Main.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/Main.java 
b/main/src/main/java/org/apache/karaf/main/Main.java
index 9ba5a30..65e9ae0 100644
--- a/main/src/main/java/org/apache/karaf/main/Main.java
+++ b/main/src/main/java/org/apache/karaf/main/Main.java
@@ -40,6 +40,7 @@ import java.util.Properties;
 import java.util.Random;
 import java.util.StringTokenizer;
 import java.util.TreeMap;
+import java.util.UUID;
 import java.util.jar.Manifest;
 import java.util.logging.Level;
 import java.util.logging.Logger;
@@ -1457,7 +1458,18 @@ public class Main {
             int port = Integer.parseInt(props.getProperty(KARAF_SHUTDOWN_PORT, 
"0"));
             String host = props.getProperty(KARAF_SHUTDOWN_HOST, "localhost");
             String portFile = props.getProperty(KARAF_SHUTDOWN_PORT_FILE);
-            final String shutdown = props.getProperty(KARAF_SHUTDOWN_COMMAND, 
DEFAULT_SHUTDOWN_COMMAND);
+            String shutdown = props.getProperty(KARAF_SHUTDOWN_COMMAND);
+            if (shutdown == null) {
+                shutdown = UUID.randomUUID().toString();
+                File file = new File(karafBase, "etc/" + 
CONFIG_PROPERTIES_FILE_NAME);
+                Writer writer = new FileWriter(file, true);
+                try {
+                    writer.write("\n#\n# Generated command shutdown\n,#\n"
+                            + KARAF_SHUTDOWN_COMMAND + " = " + shutdown + 
"\n");
+                } finally {
+                    writer.close();
+                }
+            }
             if (port >= 0) {
                 shutdownSocket = new ServerSocket(port, 1, 
InetAddress.getByName(host));
                 if (port == 0) {

Reply via email to