KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > tanukisoftware > wrapper > event > WrapperEventListener


1 package org.tanukisoftware.wrapper.event;
2
3 /*
4  * Copyright (c) 1999, 2006 Tanuki Software Inc.
5  *
6  * Permission is hereby granted, free of charge, to any person
7  * obtaining a copy of the Java Service Wrapper and associated
8  * documentation files (the "Software"), to deal in the Software
9  * 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 /**
29  * WrapperEventListeners can be registered with the WrapperManager class
30  * to receive WrapperEvents.
31  *
32  * @author Leif Mortenson <leif@tanukisoftware.com>
33  */

34 public interface WrapperEventListener
35 {
36     /**
37      * Enabling service events will cause the listener to receive
38      * WrapperServiceEvents. These events pertain to the Wrapper as a
39      * service.
40      */

41     static long EVENT_FLAG_SERVICE = 0x1;
42     
43     /**
44      * Enabling control events will cause the listener to receive
45      * WrapperControlEvents. There events are thrown whenever the
46      * Java process receives control events from the system. These
47      * include CTRL-C, HALT, TERM signals etc.
48      */

49     static long EVENT_FLAG_CONTROL = 0x2;
50     
51     /**
52      * Enabling core events will cause the listener to receive
53      * WrapperCoreEvents. These events provide information on the internal
54      * timing of the Wrapper.
55      * <p>
56      * WARNING - Great care should be taken when receiving events of this type.
57      * They are sent from within the Wrapper's internal timing thread. If the
58      * listner takes too much time working with the event, Wrapper performance
59      * could be adversely affected. If unsure, it is recommended that events
60      * of this type not be included.
61      */

62     static long EVENT_FLAG_CORE = 0xf000000000000000L;
63     
64     /**
65      * Called whenever a WrapperEvent is fired. The exact set of events that a
66      * listener will receive will depend on the mask supplied when
67      * WrapperManager.addWrapperEventListener was called to register the
68      * listener.
69      * <p>
70      * Listener implementations should never assume that they will only receive
71      * events of a particular type. To assure that events added to future
72      * versions of the Wrapper do not cause problems with user code, events
73      * should always be tested with "if ( event instanceof {EventClass} )"
74      * before casting it to a specific event type.
75      *
76      * @param event WrapperEvent which was fired.
77      */

78     void fired( WrapperEvent event );
79 }
80
Popular Tags