KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > nextapp > echo2 > webcontainer > ContainerContextImpl


1 /*
2  * This file is part of the Echo Web Application Framework (hereinafter "Echo").
3  * Copyright (C) 2002-2005 NextApp, Inc.
4  *
5  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
6  *
7  * The contents of this file are subject to the Mozilla Public License Version
8  * 1.1 (the "License"); you may not use this file except in compliance with
9  * the License. You may obtain a copy of the License at
10  * http://www.mozilla.org/MPL/
11  *
12  * Software distributed under the License is distributed on an "AS IS" basis,
13  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
14  * for the specific language governing rights and limitations under the
15  * License.
16  *
17  * Alternatively, the contents of this file may be used under the terms of
18  * either the GNU General Public License Version 2 or later (the "GPL"), or
19  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
20  * in which case the provisions of the GPL or the LGPL are applicable instead
21  * of those above. If you wish to allow use of your version of this file only
22  * under the terms of either the GPL or the LGPL, and not to allow others to
23  * use your version of this file under the terms of the MPL, indicate your
24  * decision by deleting the provisions above and replace them with the notice
25  * and other provisions required by the GPL or the LGPL. If you do not delete
26  * the provisions above, a recipient may use your version of this file under
27  * the terms of any one of the MPL, the GPL or the LGPL.
28  */

29
30 package nextapp.echo2.webcontainer;
31
32 import java.io.Serializable JavaDoc;
33 import java.security.Principal JavaDoc;
34 import java.util.Map JavaDoc;
35
36 import javax.servlet.http.Cookie JavaDoc;
37 import javax.servlet.http.HttpSession JavaDoc;
38
39 import nextapp.echo2.app.TaskQueueHandle;
40 import nextapp.echo2.webrender.ClientConfiguration;
41 import nextapp.echo2.webrender.ClientProperties;
42 import nextapp.echo2.webrender.Connection;
43 import nextapp.echo2.webrender.ServerDelayMessage;
44 import nextapp.echo2.webrender.Service;
45 import nextapp.echo2.webrender.WebRenderServlet;
46
47 /**
48  * <code>ContainerContext</code> implementation.
49  */

50 class ContainerContextImpl
51 implements ContainerContext, Serializable JavaDoc {
52     
53     private ContainerInstance containerInstance;
54     
55     /**
56      * Creates a new <code>ContainerContextImpl</code>
57      *
58      * @param containerInstance the relevant <code>ContainerInstance</code>
59      */

60     ContainerContextImpl(ContainerInstance containerInstance) {
61         super();
62         this.containerInstance = containerInstance;
63     }
64
65     /**
66      * @see nextapp.echo2.webcontainer.ContainerContext#getClientProperties()
67      */

68     public ClientProperties getClientProperties() {
69         return containerInstance.getClientProperties();
70     }
71     
72     /**
73      * @see nextapp.echo2.webcontainer.ContainerContext#getCookies()
74      */

75     public Cookie JavaDoc[] getCookies() {
76         Connection conn = WebRenderServlet.getActiveConnection();
77         if (conn == null) {
78             return null;
79         } else {
80             return conn.getRequest().getCookies();
81         }
82     }
83     
84     /**
85      * @see nextapp.echo2.webcontainer.ContainerContext#getInitialRequestParameterMap()
86      */

87     public Map JavaDoc getInitialRequestParameterMap() {
88         return containerInstance.getInitialRequestParameterMap();
89     }
90     
91     /**
92      * @see nextapp.echo2.webcontainer.ContainerContext#getServiceUri(nextapp.echo2.webrender.Service)
93      */

94     public String JavaDoc getServiceUri(Service service) {
95         return containerInstance.getServiceUri(service);
96     }
97     
98     /**
99      * @see nextapp.echo2.webcontainer.ContainerContext#getServletUri()
100      */

101     public String JavaDoc getServletUri() {
102         return containerInstance.getServletUri();
103     }
104     
105     /**
106      * @see nextapp.echo2.webcontainer.ContainerContext#getSession()
107      */

108     public HttpSession JavaDoc getSession() {
109         return containerInstance.getSession();
110     }
111     
112     /**
113      * @see nextapp.echo2.webcontainer.ContainerContext#getUserPrincipal()
114      */

115     public Principal JavaDoc getUserPrincipal() {
116         Connection conn = WebRenderServlet.getActiveConnection();
117         if (conn == null) {
118             return null;
119         } else {
120             return conn.getRequest().getUserPrincipal();
121         }
122     }
123     
124     /**
125      * @see nextapp.echo2.webcontainer.ContainerContext#isUserInRole(java.lang.String)
126      */

127     public boolean isUserInRole(String JavaDoc role) {
128         Connection conn = WebRenderServlet.getActiveConnection();
129         if (conn == null) {
130             return false;
131         } else {
132             return conn.getRequest().isUserInRole(role);
133         }
134     }
135     
136     /**
137      * @see nextapp.echo2.webcontainer.ContainerContext#setClientConfiguration(nextapp.echo2.webrender.ClientConfiguration)
138      */

139     public void setClientConfiguration(ClientConfiguration clientConfiguration) {
140         containerInstance.setClientConfiguration(clientConfiguration);
141     }
142     
143     /**
144      * @see nextapp.echo2.webcontainer.ContainerContext#setServerDelayMessage(nextapp.echo2.webrender.ServerDelayMessage)
145      */

146     public void setServerDelayMessage(ServerDelayMessage serverDelayMessage) {
147         containerInstance.setServerDelayMessage(serverDelayMessage);
148     }
149
150     /**
151      * @see nextapp.echo2.webcontainer.ContainerContext#setTaskQueueCallbackInterval(nextapp.echo2.app.TaskQueueHandle, int)
152      */

153     public void setTaskQueueCallbackInterval(TaskQueueHandle taskQueue, int ms) {
154         containerInstance.setTaskQueueCallbackInterval(taskQueue, ms);
155     }
156 }
157
Popular Tags