org.tanukisoftware.wrapper.event

Class WrapperControlEvent

public class WrapperControlEvent extends WrapperEvent

WrapperControlEvent are used to notify the listener whenever the native wrapper code traps a system control signal against the Java process. It is up to the listener to take any actions necessary.

The Wrapper will send this event to any registered listeners first, then it will pass the control code to the WrapperListener.controlEvent method. If the consume method is called, it will still be passed to other WrapperEventListeners, but will not be passed to the WrapperListener.controlEvent method. Other WrapperEventListeners should check the isConsumed method to decide whether or not the even has already been handled.

If the wrapper.ignore_signals property is set to true then the event will still be fired, but its isConsumed() method will return true initially.

Possible values are:

WrapperManager.WRAPPER_CTRL_C_EVENT
The user pressed CTRL-C in a command windown (Windows or UNIX). Or the kill INT signal was received (UNIX).
WRAPPER_CTRL_CLOSE_EVENT
The user is trying to close the console in which the Wrapper is running (Windows).
WRAPPER_CTRL_LOGOFF_EVENT
The user logged off (Windows).
WRAPPER_CTRL_SHUTDOWN_EVENT
The system is being shutdown (Windows).
WRAPPER_CTRL_TERM_EVENT
The kill TERM signal was received (UNIX).
WRAPPER_CTRL_HUP_EVENT
The kill HUP signal was received (UNIX).

Author: Leif Mortenson

Constructor Summary
WrapperControlEvent(int controlEvent, String controlEventName)
Creates a new WrapperControlEvent.
Method Summary
voidconsume()
Mark the event as consumed.
intgetControlEvent()
Returns the system control event.
StringgetControlEventName()
Returns the name of the control event.
longgetFlags()
Returns a set of event flags for which the event should be fired.
booleanisConsumed()
Returns true if the event has been consumed.
StringtoString()
Returns a string representation of the event.

Constructor Detail

WrapperControlEvent

public WrapperControlEvent(int controlEvent, String controlEventName)
Creates a new WrapperControlEvent.

Parameters: controlEvent Service control event. controlEventName The name of the event.

Method Detail

consume

public void consume()
Mark the event as consumed. This should be done if the event has been handled.

On Windows, some events are sent both to the JVM and Wrapper processes. Event if the CTRL-C event is ignored within the JVM, the Wrapper process may still initiate a shutdown.

getControlEvent

public int getControlEvent()
Returns the system control event.

Possible values are: WrapperManager.WRAPPER_CTRL_C_EVENT, WRAPPER_CTRL_CLOSE_EVENT, WRAPPER_CTRL_LOGOFF_EVENT, WRAPPER_CTRL_SHUTDOWN_EVENT, WRAPPER_CTRL_TERM_EVENT, or WRAPPER_CTRL_HUP_EVENT.

Returns: The system control event.

getControlEventName

public String getControlEventName()
Returns the name of the control event.

Returns: The name of the control event.

getFlags

public long getFlags()
Returns a set of event flags for which the event should be fired. This value is compared with the mask supplied when when a WrapperEventListener is registered to decide which listeners should receive the event.

If a subclassed, the return value of the super class should usually be ORed with any additional flags.

Returns: a set of event flags.

isConsumed

public boolean isConsumed()
Returns true if the event has been consumed.

Returns: True if the event has been consumed.

toString

public String toString()
Returns a string representation of the event.

Returns: A string representation of the event.

Copyright 1999, 2006 Tanuki Software Inc., All Rights Reserved.