summaryrefslogtreecommitdiff
path: root/java/src/Ice/Application.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/Ice/Application.java')
-rw-r--r--java/src/Ice/Application.java21
1 files changed, 12 insertions, 9 deletions
diff --git a/java/src/Ice/Application.java b/java/src/Ice/Application.java
index 72018dc776a..ac4ef70ee49 100644
--- a/java/src/Ice/Application.java
+++ b/java/src/Ice/Application.java
@@ -11,15 +11,18 @@ package Ice;
public abstract class Application
{
+ public final static int HandleSignals = 0;
+ public final static int NoSignalHandling = 1;
+
public
Application()
{
}
public
- Application(boolean useCtrlCHandler)
+ Application(int signalPolicy)
{
- _useCtrlCHandler = useCtrlCHandler;
+ _signalPolicy = signalPolicy;
}
//
@@ -115,7 +118,7 @@ public abstract class Application
//
// The default is to destroy when a signal is received.
//
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
destroyOnInterrupt();
}
@@ -145,7 +148,7 @@ public abstract class Application
}
// This clears any set interrupt.
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
defaultInterrupt();
}
@@ -239,7 +242,7 @@ public abstract class Application
public static void
destroyOnInterrupt()
{
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
synchronized(_mutex)
{
@@ -271,7 +274,7 @@ public abstract class Application
public static void
shutdownOnInterrupt()
{
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
synchronized(_mutex)
{
@@ -312,7 +315,7 @@ public abstract class Application
public static void
setInterruptHook(java.lang.Thread newHook) // Pun intended.
{
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
try
{
@@ -336,7 +339,7 @@ public abstract class Application
public static void
defaultInterrupt()
{
- if(_useCtrlCHandler)
+ if(_signalPolicy == HandleSignals)
{
changeHook(null);
}
@@ -546,5 +549,5 @@ public abstract class Application
private static boolean _callbackInProgress = false;
private static boolean _destroyed = false;
private static boolean _interrupted = false;
- private static boolean _useCtrlCHandler = true;
+ private static int _signalPolicy = HandleSignals;
}