1 package org.jahia.clipbuilder.html; 2 3 import javax.servlet.http.*; 4 5 import org.jahia.clipbuilder.html.bean.*; 6 import org.jahia.clipbuilder.html.struts.Util.*; 7 import org.jahia.clipbuilder.html.struts.webBrowser.*; 8 import org.jahia.clipbuilder.html.web.*; 9 import java.util.*; 10 11 16 public class SessionManager { 17 private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(SessionManager.class); 18 19 20 23 public SessionManager() { 24 } 25 26 27 33 public static void setClipperBean(HttpServletRequest httpServletRequest, ClipperBean cBean) { 34 HttpSession session = httpServletRequest.getSession(); 35 String nameSpace = getNameSpace(httpServletRequest); 36 if (nameSpace == null) { 37 session.setAttribute(Constants.CLIPPER_BEAN, cBean); 38 } 39 else { 40 session.setAttribute(nameSpace + Constants.CLIPPER_BEAN, cBean); 41 } 42 } 43 44 45 51 public static void setWebBrowserForm(HttpServletRequest request, WebBrowserForm w) { 52 HttpSession session = request.getSession(); 53 session.setAttribute(Constants.WEB_BROWSER_FORM, w); 54 } 55 56 57 60 66 69 75 78 84 87 93 96 102 108 public static void setRecorderBean(HttpServletRequest httpServletRequest, RecordingBean rb) { 109 HttpSession session = httpServletRequest.getSession(); 110 session.setAttribute(org.jahia.clipbuilder.html.web.Constant.WebConstants.RECORDING, rb); 111 } 112 113 114 115 121 public static void setHTMLDocumentBuilder(HttpServletRequest r, HTMLDocumentBuilder htd) { 122 HttpSession session = r.getSession(); 123 String nameSpace = getNameSpace(r); 124 125 if (nameSpace == null) { 126 session.setAttribute(Constants.HTMLDOCUMENT_BUILDER, htd); 127 } 128 else { 129 session.setAttribute(nameSpace + Constants.HTMLDOCUMENT_BUILDER, htd); 130 } 131 } 132 133 134 140 public static void setWebBrowserSimulator(HttpServletRequest request, WebBrowserSimulator w) { 141 request.getSession().setAttribute(Constants.WEB_BROWSER_SIMULATOR, w); 142 } 143 144 145 151 public static WebBrowserSimulator getWebBrowserSimulator(HttpServletRequest request) { 152 return (WebBrowserSimulator) request.getSession().getAttribute(Constants.WEB_BROWSER_SIMULATOR); 153 } 154 155 156 159 165 171 public static WebBrowserForm getWebBrowserForm(HttpServletRequest httpServletRequest) { 172 HttpSession session = httpServletRequest.getSession(); 173 WebBrowserForm w = (WebBrowserForm) session.getAttribute(Constants.WEB_BROWSER_FORM); 174 return w; 175 } 176 177 178 179 185 public static ClipperBean getClipperBean(HttpServletRequest httpServletRequest) { 186 ClipperBean bean = new ClipperBean(); 187 HttpSession session = httpServletRequest.getSession(); 188 String nameSpace = getNameSpace(httpServletRequest); 189 if (nameSpace != null) { 190 logger.debug("NameSpace: " + nameSpace); 191 bean = (ClipperBean) session.getAttribute(nameSpace + Constants.CLIPPER_BEAN); 192 } 193 else { 194 logger.debug("NameSpac is null: "); 195 bean = (ClipperBean) session.getAttribute(Constants.CLIPPER_BEAN); 196 } 197 if (bean == null) { 199 logger.error("[ClipperBean error: Not found]"); 200 } 201 202 204 return bean; 205 } 206 207 208 209 215 221 public static HTMLDocumentBuilder getHTMLDocumentBuilder(HttpServletRequest r) { 222 HttpSession session = r.getSession(); 223 String nameSpace = getNameSpace(r); 224 if (nameSpace == null) { 225 return (HTMLDocumentBuilder) session.getAttribute(Constants.HTMLDOCUMENT_BUILDER); 226 } 227 else { 228 return (HTMLDocumentBuilder) session.getAttribute(nameSpace + Constants.HTMLDOCUMENT_BUILDER); 229 } 230 } 231 232 233 234 237 244 247 254 260 public static RecordingBean getRecorderBean(HttpServletRequest httpServletRequest) { 261 HttpSession session = httpServletRequest.getSession(); 262 RecordingBean rb = (RecordingBean) session.getAttribute(org.jahia.clipbuilder.html.web.Constant.WebConstants.RECORDING); 263 return rb; 264 } 265 266 267 268 271 278 284 public static ClippersManagerBean getClippersManagerBean(HttpServletRequest request) { 285 HttpSession session = request.getSession(); 286 ClippersManagerBean bean = (ClippersManagerBean) session.getAttribute(ClippersManagerBean.class.toString()); 287 if (bean == null) { 289 logger.error("[ClipperBean error: Not found]"); 290 } 291 return bean; 292 } 293 294 295 301 public static String getNameSpace(HttpServletRequest request) { 302 String nameSpace = RequestParameterManager.getNameSpace(request); 303 logger.debug("get NameSpace: " + nameSpace); 304 return nameSpace; 305 } 306 307 308 314 public static boolean sessionExist(HttpServletRequest request) { 315 return !(request.getSession() == null); 316 } 317 318 319 324 public static void removeWebBrowserSimulator(HttpServletRequest request) { 325 request.getSession().removeAttribute(Constants.WEB_BROWSER_SIMULATOR); 326 } 327 328 329 330 335 public static void removeHTMLDocumentBuilder(HttpServletRequest r) { 336 HttpSession session = r.getSession(); 337 String nameSpace = getNameSpace(r); 338 if (nameSpace == null) { 339 session.removeAttribute(Constants.HTMLDOCUMENT_BUILDER); 340 } 341 else { 342 session.removeAttribute(nameSpace + Constants.HTMLDOCUMENT_BUILDER); 343 } 344 } 345 346 347 352 public static void initSessionAttributes(HttpServletRequest request) { 353 355 363 initClippersManagerBean(request); 365 } 366 367 368 371 377 380 public static void removeClipperBean(HttpServletRequest httpServletRequest) { 381 HttpSession session = httpServletRequest.getSession(); 382 String nameSpace = getNameSpace(httpServletRequest); 383 if (nameSpace == null) { 384 session.removeAttribute(Constants.CLIPPER_BEAN); 385 } 386 else { 387 session.removeAttribute(nameSpace + Constants.CLIPPER_BEAN); 388 } 389 } 390 391 392 398 403 public static void initClippersManagerBean(HttpServletRequest httpServletRequest) { 404 ClippersManagerBean bean = new ClippersManagerBean(); 405 HttpSession session = httpServletRequest.getSession(); 406 session.setAttribute(ClippersManagerBean.class.toString(), bean); 407 } 408 409 410 415 private static void debugSession(HttpSession session) { 416 Enumeration enu = session.getAttributeNames(); 417 418 while (enu.hasMoreElements()) { 419 logger.debug("Session attribut name: " + enu.nextElement().toString()); 420 } 421 } 422 423 } 424 | Popular Tags |