/** * Return the <code>HttpSession</code> for which this object is the facade. */ @Override @SuppressWarnings("unchecked") public HttpSession getSession() { if (facade == null) { if (SecurityUtil.isPackageProtectionEnabled()) { final DeltaSession fsession = this; facade = (DeltaSessionFacade) AccessController.doPrivileged(new PrivilegedAction() { @Override public Object run() { return new DeltaSessionFacade(fsession); } }); } else { facade = new DeltaSessionFacade(this); } } return (facade); }
@Override public String getRealPath(String path) { if (SecurityUtil.isPackageProtectionEnabled()) { return (String) doPrivileged("getRealPath", new Object[]{path}); } else { return context.getRealPath(path); } }
@Override public void setContentType(String type) { if (isCommitted()) { return; } if (SecurityUtil.isPackageProtectionEnabled()){ AccessController.doPrivileged(new SetContentTypePrivilegedAction(type)); } else { response.setContentType(type); } }
@Override public String getContextPath() { if (SecurityUtil.isPackageProtectionEnabled()) { return (String) doPrivileged("getContextPath", null); } else { return context.getContextPath(); } }
@Override public void setContentType(String type) { if (isCommitted()) { return; } if (SecurityUtil.isPackageProtectionEnabled()){ AccessController.doPrivileged(new SetContentTypePrivilegedAction(type)); } else { response.setContentType(type); } }
@Override public FilterRegistration.Dynamic addFilter(String filterName, String className) { if (SecurityUtil.isPackageProtectionEnabled()) { return (FilterRegistration.Dynamic) doPrivileged( "addFilter", new Object[]{filterName, className}); } else { return context.addFilter(filterName, className); } }
public String generateCookieString(final Cookie cookie) { // Web application code can receive a IllegalArgumentException // from the generateHeader() invocation if (SecurityUtil.isPackageProtectionEnabled()) { return AccessController.doPrivileged( new PrivilegedGenerateCookieString(getContext(), cookie)); } else { return getContext().getCookieProcessor().generateHeader(cookie); } }
@Override public FilterRegistration getFilterRegistration(String filterName) { if (SecurityUtil.isPackageProtectionEnabled()) { return (FilterRegistration) doPrivileged( "getFilterRegistration", new Object[]{filterName}); } else { return context.getFilterRegistration(filterName); } }
@Override public Dynamic addJspFile(String jspName, String jspFile) { if (SecurityUtil.isPackageProtectionEnabled()) { return (ServletRegistration.Dynamic) doPrivileged("addJspFile", new Object[]{jspName, jspFile}); } else { return context.addJspFile(jspName, jspFile); } }
@Override public int getEffectiveMajorVersion() { if (SecurityUtil.isPackageProtectionEnabled()) { return ((Integer) doPrivileged("getEffectiveMajorVersion", null)).intValue(); } else { return context.getEffectiveMajorVersion(); } }
@Override public void setRequestCharacterEncoding(String encoding) { if (SecurityUtil.isPackageProtectionEnabled()) { doPrivileged("setRequestCharacterEncoding", new Object[] { encoding }); } else { context.setRequestCharacterEncoding(encoding); } }
@Override @SuppressWarnings("unchecked") // doPrivileged() returns the correct type public Set<String> getResourcePaths(String path) { if (SecurityUtil.isPackageProtectionEnabled()){ return (Set<String>)doPrivileged("getResourcePaths", new Object[]{path}); } else { return context.getResourcePaths(path); } }
@Override public RequestDispatcher getRequestDispatcher(final String path) { if (SecurityUtil.isPackageProtectionEnabled()) { return (RequestDispatcher) doPrivileged("getRequestDispatcher", new Object[]{path}); } else { return context.getRequestDispatcher(path); } }
@Override public RequestDispatcher getNamedDispatcher(String name) { if (SecurityUtil.isPackageProtectionEnabled()) { return (RequestDispatcher) doPrivileged("getNamedDispatcher", new Object[]{name}); } else { return context.getNamedDispatcher(name); } }
@Override public String getInitParameter(String name) { if (SecurityUtil.isPackageProtectionEnabled()) { return (String) doPrivileged("getInitParameter", new Object[]{name}); } else { return context.getInitParameter(name); } }
@Override public void setAttribute(String name, Object object) { if (SecurityUtil.isPackageProtectionEnabled()) { doPrivileged("setAttribute", new Object[]{name,object}); } else { context.setAttribute(name, object); } }
@Override public ServletRegistration.Dynamic addServlet(String servletName, Servlet servlet) { if (SecurityUtil.isPackageProtectionEnabled()) { return (ServletRegistration.Dynamic) doPrivileged("addServlet", new Class[]{String.class, Servlet.class}, new Object[]{servletName, servlet}); } else { return context.addServlet(servletName, servlet); } }
@Override @SuppressWarnings("unchecked") // doPrivileged() returns the correct type public Set<SessionTrackingMode> getDefaultSessionTrackingModes() { if (SecurityUtil.isPackageProtectionEnabled()) { return (Set<SessionTrackingMode>) doPrivileged("getDefaultSessionTrackingModes", null); } else { return context.getDefaultSessionTrackingModes(); } }
@Override public void addListener(Class<? extends EventListener> listenerClass) { if (SecurityUtil.isPackageProtectionEnabled()) { doPrivileged("addListener", new Class[]{Class.class}, new Object[]{listenerClass}); } else { context.addListener(listenerClass); } }
@Override public void addListener(String className) { if (SecurityUtil.isPackageProtectionEnabled()) { doPrivileged("addListener", new Object[]{className}); } else { context.addListener(className); } }