comparison src/main/java/de/mpiwg/itgroup/diva/rest/RestInterface.java @ 1:2e911857a759

(none)
author jurzua
date Wed, 29 Oct 2014 14:00:28 +0000
parents
children
comparison
equal deleted inserted replaced
0:74df02964906 1:2e911857a759
1 package de.mpiwg.itgroup.diva.rest;
2
3 import javax.faces.FactoryFinder;
4 import javax.faces.context.FacesContext;
5 import javax.faces.context.FacesContextFactory;
6 import javax.faces.lifecycle.Lifecycle;
7 import javax.faces.lifecycle.LifecycleFactory;
8 import javax.servlet.ServletContext;
9 import javax.servlet.http.HttpServletRequest;
10 import javax.servlet.http.HttpServletResponse;
11
12 import org.mpi.openmind.cache.WrapperService;
13
14 import de.mpiwg.itgroup.ismi.entry.beans.ApplicationBean;
15 import de.mpiwg.itgroup.ismi.entry.beans.SessionBean;
16
17 public abstract class RestInterface {
18
19 public static String APP_BEAN = "ApplicationBean1";
20 public static String SESSION_BEAN = "Session";
21
22
23 protected boolean userCanEdit(HttpServletRequest request, HttpServletResponse response){
24 SessionBean session = getSessionBean(request, response);
25 return session.isCanEdit();
26
27 }
28
29 public SessionBean getSessionBean(HttpServletRequest request,
30 HttpServletResponse response){
31 return (SessionBean)getSessionBean(SESSION_BEAN, request, response);
32 }
33
34 public WrapperService getWrapper(HttpServletRequest request,
35 HttpServletResponse response){
36 return getAppBean(request, response).getWrapper();
37 }
38
39 public ApplicationBean getAppBean(HttpServletRequest request, HttpServletResponse response) {
40 ApplicationBean appBean = (ApplicationBean)getApplicationBean(APP_BEAN, request, response);
41
42 if(appBean == null){
43 appBean = new ApplicationBean();
44 getFacesContext(request, response).getCurrentInstance().getExternalContext().getApplicationMap().put(APP_BEAN, appBean);
45 }
46 return appBean;
47 }
48
49 private Object getApplicationBean(String bean, HttpServletRequest request,
50 HttpServletResponse response) {
51 return getFacesContext(request, response).getExternalContext().getApplicationMap().get(bean);
52 }
53
54 private Object getSessionBean(String bean, HttpServletRequest request, HttpServletResponse response) {
55 return getFacesContext(request, response).getExternalContext().getSessionMap().get(bean);
56 }
57
58
59 public FacesContext getFacesContext(HttpServletRequest request,
60 HttpServletResponse response) {
61 ServletContext servletContext = ((HttpServletRequest) request)
62 .getSession().getServletContext();
63 FacesContextFactory contextFactory = (FacesContextFactory) FactoryFinder
64 .getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);
65 LifecycleFactory lifecycleFactory = (LifecycleFactory) FactoryFinder
66 .getFactory(FactoryFinder.LIFECYCLE_FACTORY);
67 Lifecycle lifecycle = lifecycleFactory
68 .getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE);
69 return contextFactory.getFacesContext(servletContext, request,
70 response, lifecycle);
71 }
72
73 }