KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > admin > event > EventContext


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23 package com.sun.enterprise.admin.event;
24
25 import java.util.ArrayList JavaDoc;
26 import java.util.Iterator JavaDoc;
27 import com.sun.enterprise.config.ConfigChange;
28
29 /**
30  * Provides access to the thread local event stack.
31  *
32  * @author Nazrul Islam
33  * @since JDK1.4
34  */

35 public class EventContext {
36
37     /**
38      * Returns the event stack from thread local.
39      * @return event stack from thread local
40      */

41     public static EventStack getEventStackFromThreadLocal() {
42         return (EventStack) _threadLocal.get();
43     }
44
45     /**
46      * Sets the event stack to thread local.
47      * @param stack event stack info
48      */

49     public static void setEventStackToThreadLocal(EventStack stack) {
50         _threadLocal.set(stack);
51     }
52
53     /**
54      * Returns the config changes from config.
55      * @return list of config changes
56      */

57     public static ArrayList JavaDoc getConfigChangeList() {
58
59         EventStack stack = getEventStackFromThreadLocal();
60         return stack.getConfigContext().getConfigChangeList();
61     }
62
63     /**
64      * Adds an event to the stack. The newly added event will be
65      * sent to the target destination.
66      *
67      * @param event an event
68      */

69     public static void addEvent(AdminEvent event) {
70         EventStack stack = getEventStackFromThreadLocal();
71         stack.addEvent(event);
72     }
73     
74     // ---- VARIABLE(S)-PRIVATE -----------------------------------
75
private static ThreadLocal JavaDoc _threadLocal = new ThreadLocal JavaDoc();
76 }
77
Popular Tags