01: package org.tanukisoftware.wrapper.test;
02:
03: /*
04: * Copyright (c) 1999, 2006 Tanuki Software Inc.
05: *
06: * Permission is hereby granted, free of charge, to any person
07: * obtaining a copy of the Java Service Wrapper and associated
08: * documentation files (the "Software"), to deal in the Software
09: * without restriction, including without limitation the rights
10: * to use, copy, modify, merge, publish, distribute, sub-license,
11: * and/or sell copies of the Software, and to permit persons to
12: * whom the Software is furnished to do so, subject to the
13: * following conditions:
14: *
15: * The above copyright notice and this permission notice shall be
16: * included in all copies or substantial portions of the Software.
17: *
18: * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19: * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
20: * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21: * NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
22: * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23: * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
24: * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
25: * OTHER DEALINGS IN THE SOFTWARE.
26: */
27:
28: import org.tanukisoftware.wrapper.WrapperManager;
29:
30: /**
31: *
32: *
33: * @author Leif Mortenson <leif@tanukisoftware.com>
34: */
35: public class OnExit {
36: /*---------------------------------------------------------------
37: * Main Method
38: *-------------------------------------------------------------*/
39: public static void main(String[] args) {
40: System.out.println("Test the handling of on exit handlers.");
41: System.out
42: .println("The Wrapper should restart the JVM when it detects and exit code of ");
43: System.out
44: .println(" 1, 2, or any code except 3. It will then shutdown if it detects ");
45: System.out.println(" an exit code of 3.");
46: System.out.println();
47:
48: int exitCode = WrapperManager.getJVMId();
49: switch (exitCode) {
50: case 1:
51: case 2:
52: System.out.println("Stopping the JVM with an exit code of "
53: + exitCode + ", the ");
54: System.out.println(" Wrapper should restart.");
55: break;
56:
57: case 3:
58: System.out.println("Stopping the JVM with an exit code of "
59: + exitCode + ", the ");
60: System.out.println(" Wrapper should stop.");
61: break;
62:
63: default:
64: System.out
65: .println("The Wrapper should have stopped on the previous exitCode 3.");
66: System.out.println(" We should not be here.");
67: break;
68: }
69: WrapperManager.stop(exitCode);
70: }
71: }
|