Title: [2444] trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server: Didn't mean to delete the admin code
Revision
2444
Author
dblevins
Date
2006-02-14 03:13:28 -0500 (Tue, 14 Feb 2006)

Log Message

Didn't mean to delete the admin code

Added Paths


Diff

Added: trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/AdminDaemon.java (2443 => 2444)

--- trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/AdminDaemon.java	2006-02-14 08:02:07 UTC (rev 2443)
+++ trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/AdminDaemon.java	2006-02-14 08:13:28 UTC (rev 2444)
@@ -0,0 +1,72 @@
+package org.openejb.server.admin;
+
+import java.io.*;
+import java.net.*;
+import java.util.*;
+
+import org.openejb.server.ServerService;
+import org.openejb.server.ServiceManager;
+import org.openejb.server.ServiceException;
+import org.openejb.client.RequestMethods;
+
+public class AdminDaemon implements ServerService {
+
+    public void init(Properties props) throws Exception {
+    }
+
+    public void service(Socket socket) throws ServiceException, IOException {
+        InputStream in = null;
+        InetAddress clientIP = null;
+
+        try {
+            in = socket.getInputStream();
+            clientIP = socket.getInetAddress();
+
+            byte requestType = (byte) in.read();
+
+            if (requestType == -1) {
+                return;
+            }
+
+            switch (requestType) {
+                case RequestMethods.STOP_REQUEST_Quit:
+                case RequestMethods.STOP_REQUEST_quit:
+                case RequestMethods.STOP_REQUEST_Stop:
+                case RequestMethods.STOP_REQUEST_stop:
+                    ServiceManager.getManager().stop();
+
+            }
+
+        } catch (SecurityException e) {
+
+        } catch (Throwable e) {
+
+        } finally {
+            try {
+                if (in != null) in.close();
+                if (socket != null) socket.close();
+            } catch (Throwable t) {
+
+            }
+        }
+    }
+
+    public void start() throws ServiceException {
+    }
+
+    public void stop() throws ServiceException {
+    }
+
+    public int getPort() {
+        return 0;
+    }
+
+    public String getIP() {
+        return "";
+    }
+
+    public String getName() {
+        return "admin thread";
+    }
+
+}
Property changes on: trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/AdminDaemon.java
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/Stop.java (2443 => 2444)

--- trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/Stop.java	2006-02-14 08:02:07 UTC (rev 2443)
+++ trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/Stop.java	2006-02-14 08:13:28 UTC (rev 2444)
@@ -0,0 +1,113 @@
+package org.openejb.server.admin;
+
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.ConnectException;
+import java.net.Socket;
+import java.net.URL;
+import java.util.Properties;
+
+import org.openejb.util.JarUtils;
+
+public class Stop implements org.openejb.client.RequestMethods {
+    private static final String helpBase = "META-INF/org.openejb.cli/";
+
+    public static void stop(String host, int port) {
+        try {
+
+            Socket socket = new Socket(host, port);
+            OutputStream out = socket.getOutputStream();
+
+            out.write(STOP_REQUEST_Stop);
+
+        } catch (ConnectException e) {
+            System.out.println(":: server not running ::");
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void stop() {
+        stop("localhost", 4200);
+    }
+
+    public static void main(String [] args) {
+        try {
+
+            String host = "localhost";
+
+            int port = 4200;
+
+            for (int i = 0; i < args.length; i++) {
+                if (args[i].equals("-h")) {
+                    if (args.length > i + 1) {
+                        host = args[++i];
+                    }
+                } else if (args[i].equals("-p")) {
+                    if (args.length > i + 1) {
+                        port = Integer.parseInt(args[++i]);
+                    }
+                } else if (args[i].equals("--help")) {
+                    printHelp();
+                    return;
+                } else if (args[i].equals("-examples")) {
+                    printExamples();
+                    return;
+                }
+            }
+
+            stop(host, port);
+        } catch (Exception re) {
+            System.err.println("[EJB Server] FATAL ERROR: " + re.getMessage());
+            re.printStackTrace();
+        }
+    }
+
+    private static void printHelp() {
+        String header = "OpenEJB Remote Server ";
+        try {
+            JarUtils.setHandlerSystemProperty();
+            Properties versionInfo = new Properties();
+            versionInfo.load(new URL("resource:/openejb-version.properties").openConnection().getInputStream());
+            header += versionInfo.get("version");
+        } catch (java.io.IOException e) {
+        }
+
+        System.out.println(header);
+
+        try {
+            InputStream in = Thread.currentThread().getContextClassLoader().getResource(helpBase + "stop.help").openConnection().getInputStream();
+
+            int b = in.read();
+            while (b != -1) {
+                System.out.write(b);
+                b = in.read();
+            }
+        } catch (java.io.IOException e) {
+        }
+    }
+
+    private static void printExamples() {
+        String header = "OpenEJB Remote Server ";
+        try {
+            JarUtils.setHandlerSystemProperty();
+            Properties versionInfo = new Properties();
+            versionInfo.load(new URL("resource:/openejb-version.properties").openConnection().getInputStream());
+            header += versionInfo.get("version");
+        } catch (java.io.IOException e) {
+        }
+
+        System.out.println(header);
+
+        try {
+            InputStream in = Thread.currentThread().getContextClassLoader().getResource(helpBase + "stop.examples").openConnection().getInputStream();
+
+            int b = in.read();
+            while (b != -1) {
+                System.out.write(b);
+                b = in.read();
+            }
+        } catch (java.io.IOException e) {
+        }
+    }
+}
Property changes on: trunk/openejb3/server/openejb-server/src/main/java/org/openejb/server/admin/Stop.java
___________________________________________________________________
Name: svn:executable
   + *

Reply via email to