Class PluginServletContext
- java.lang.Object
-
- org.jivesoftware.openfire.container.PluginServletContext
-
- All Implemented Interfaces:
javax.servlet.ServletContext
public class PluginServletContext extends Object implements javax.servlet.ServletContext
A Servlet Context to be used by Openfire plugins. This implementation is used do load resources from the plugin classpath. Other functionality is delegated to a proxy implementation.- Author:
- Guus der Kinderen, guus.der.kinderen@gmail.com
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.servlet.ServletContextproxy
-
Constructor Summary
Constructors Constructor Description PluginServletContext(javax.servlet.ServletContext proxy, PluginManager pluginManager, Plugin plugin)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.servlet.FilterRegistration.DynamicaddFilter(String s, Class<? extends javax.servlet.Filter> aClass)javax.servlet.FilterRegistration.DynamicaddFilter(String s, String s1)javax.servlet.FilterRegistration.DynamicaddFilter(String s, javax.servlet.Filter filter)voidaddListener(Class<? extends EventListener> aClass)voidaddListener(String s)<T extends EventListener>
voidaddListener(T t)javax.servlet.ServletRegistration.DynamicaddServlet(String s, Class<? extends javax.servlet.Servlet> aClass)javax.servlet.ServletRegistration.DynamicaddServlet(String s, String s1)javax.servlet.ServletRegistration.DynamicaddServlet(String s, javax.servlet.Servlet servlet)<T extends javax.servlet.Filter>
TcreateFilter(Class<T> aClass)<T extends EventListener>
TcreateListener(Class<T> aClass)<T extends javax.servlet.Servlet>
TcreateServlet(Class<T> aClass)voiddeclareRoles(String... strings)ObjectgetAttribute(String s)Enumeration<String>getAttributeNames()ClassLoadergetClassLoader()javax.servlet.ServletContextgetContext(String s)StringgetContextPath()Set<javax.servlet.SessionTrackingMode>getDefaultSessionTrackingModes()intgetEffectiveMajorVersion()intgetEffectiveMinorVersion()Set<javax.servlet.SessionTrackingMode>getEffectiveSessionTrackingModes()javax.servlet.FilterRegistrationgetFilterRegistration(String s)Map<String,? extends javax.servlet.FilterRegistration>getFilterRegistrations()StringgetInitParameter(String s)Enumeration<String>getInitParameterNames()javax.servlet.descriptor.JspConfigDescriptorgetJspConfigDescriptor()intgetMajorVersion()StringgetMimeType(String s)intgetMinorVersion()javax.servlet.RequestDispatchergetNamedDispatcher(String s)StringgetRealPath(String s)javax.servlet.RequestDispatchergetRequestDispatcher(String s)URLgetResource(String s)InputStreamgetResourceAsStream(String s)Set<String>getResourcePaths(String s)StringgetServerInfo()javax.servlet.ServletgetServlet(String s)StringgetServletContextName()Enumeration<String>getServletNames()javax.servlet.ServletRegistrationgetServletRegistration(String s)Map<String,? extends javax.servlet.ServletRegistration>getServletRegistrations()Enumeration<javax.servlet.Servlet>getServlets()javax.servlet.SessionCookieConfiggetSessionCookieConfig()StringgetVirtualServerName()voidlog(Exception e, String s)voidlog(String s)voidlog(String s, Throwable throwable)voidremoveAttribute(String s)voidsetAttribute(String s, Object o)booleansetInitParameter(String s, String s1)voidsetSessionTrackingModes(Set<javax.servlet.SessionTrackingMode> set)protected static StringstripLeadingSlash(String input)The plugin classloader is an URL classloadeer, which will do lookups in directories with entries like these: jar:file:/home/guus/github/Openfire/target/openfire/plugins/oauthresourceserver/lib/plugin-oauthresourceserver.jar!/ (note the trailing slash).
-
-
-
Constructor Detail
-
PluginServletContext
public PluginServletContext(javax.servlet.ServletContext proxy, PluginManager pluginManager, Plugin plugin)
-
-
Method Detail
-
stripLeadingSlash
protected static String stripLeadingSlash(String input)
The plugin classloader is an URL classloadeer, which will do lookups in directories with entries like these: jar:file:/home/guus/github/Openfire/target/openfire/plugins/oauthresourceserver/lib/plugin-oauthresourceserver.jar!/ (note the trailing slash). To prevent lookup failures, strip any leading slash (which, when concatinated, would result "//").- Parameters:
input- A string (cannot be null)- Returns:
- The string without the first leading slash.
-
getContextPath
public String getContextPath()
- Specified by:
getContextPathin interfacejavax.servlet.ServletContext
-
getContext
public javax.servlet.ServletContext getContext(String s)
- Specified by:
getContextin interfacejavax.servlet.ServletContext
-
getMajorVersion
public int getMajorVersion()
- Specified by:
getMajorVersionin interfacejavax.servlet.ServletContext
-
getMinorVersion
public int getMinorVersion()
- Specified by:
getMinorVersionin interfacejavax.servlet.ServletContext
-
getEffectiveMajorVersion
public int getEffectiveMajorVersion()
- Specified by:
getEffectiveMajorVersionin interfacejavax.servlet.ServletContext
-
getEffectiveMinorVersion
public int getEffectiveMinorVersion()
- Specified by:
getEffectiveMinorVersionin interfacejavax.servlet.ServletContext
-
getMimeType
public String getMimeType(String s)
- Specified by:
getMimeTypein interfacejavax.servlet.ServletContext
-
getResourcePaths
public Set<String> getResourcePaths(String s)
- Specified by:
getResourcePathsin interfacejavax.servlet.ServletContext
-
getResource
public URL getResource(String s) throws MalformedURLException
- Specified by:
getResourcein interfacejavax.servlet.ServletContext- Throws:
MalformedURLException
-
getResourceAsStream
public InputStream getResourceAsStream(String s)
- Specified by:
getResourceAsStreamin interfacejavax.servlet.ServletContext
-
getRequestDispatcher
public javax.servlet.RequestDispatcher getRequestDispatcher(String s)
- Specified by:
getRequestDispatcherin interfacejavax.servlet.ServletContext
-
getNamedDispatcher
public javax.servlet.RequestDispatcher getNamedDispatcher(String s)
- Specified by:
getNamedDispatcherin interfacejavax.servlet.ServletContext
-
getServlet
public javax.servlet.Servlet getServlet(String s) throws javax.servlet.ServletException
- Specified by:
getServletin interfacejavax.servlet.ServletContext- Throws:
javax.servlet.ServletException
-
getServlets
public Enumeration<javax.servlet.Servlet> getServlets()
- Specified by:
getServletsin interfacejavax.servlet.ServletContext
-
getServletNames
public Enumeration<String> getServletNames()
- Specified by:
getServletNamesin interfacejavax.servlet.ServletContext
-
log
public void log(String s)
- Specified by:
login interfacejavax.servlet.ServletContext
-
log
public void log(Exception e, String s)
- Specified by:
login interfacejavax.servlet.ServletContext
-
log
public void log(String s, Throwable throwable)
- Specified by:
login interfacejavax.servlet.ServletContext
-
getRealPath
public String getRealPath(String s)
- Specified by:
getRealPathin interfacejavax.servlet.ServletContext
-
getServerInfo
public String getServerInfo()
- Specified by:
getServerInfoin interfacejavax.servlet.ServletContext
-
getInitParameter
public String getInitParameter(String s)
- Specified by:
getInitParameterin interfacejavax.servlet.ServletContext
-
getInitParameterNames
public Enumeration<String> getInitParameterNames()
- Specified by:
getInitParameterNamesin interfacejavax.servlet.ServletContext
-
setInitParameter
public boolean setInitParameter(String s, String s1)
- Specified by:
setInitParameterin interfacejavax.servlet.ServletContext
-
getAttribute
public Object getAttribute(String s)
- Specified by:
getAttributein interfacejavax.servlet.ServletContext
-
getAttributeNames
public Enumeration<String> getAttributeNames()
- Specified by:
getAttributeNamesin interfacejavax.servlet.ServletContext
-
setAttribute
public void setAttribute(String s, Object o)
- Specified by:
setAttributein interfacejavax.servlet.ServletContext
-
removeAttribute
public void removeAttribute(String s)
- Specified by:
removeAttributein interfacejavax.servlet.ServletContext
-
getServletContextName
public String getServletContextName()
- Specified by:
getServletContextNamein interfacejavax.servlet.ServletContext
-
addServlet
public javax.servlet.ServletRegistration.Dynamic addServlet(String s, String s1)
- Specified by:
addServletin interfacejavax.servlet.ServletContext
-
addServlet
public javax.servlet.ServletRegistration.Dynamic addServlet(String s, javax.servlet.Servlet servlet)
- Specified by:
addServletin interfacejavax.servlet.ServletContext
-
addServlet
public javax.servlet.ServletRegistration.Dynamic addServlet(String s, Class<? extends javax.servlet.Servlet> aClass)
- Specified by:
addServletin interfacejavax.servlet.ServletContext
-
createServlet
public <T extends javax.servlet.Servlet> T createServlet(Class<T> aClass) throws javax.servlet.ServletException
- Specified by:
createServletin interfacejavax.servlet.ServletContext- Throws:
javax.servlet.ServletException
-
getServletRegistration
public javax.servlet.ServletRegistration getServletRegistration(String s)
- Specified by:
getServletRegistrationin interfacejavax.servlet.ServletContext
-
getServletRegistrations
public Map<String,? extends javax.servlet.ServletRegistration> getServletRegistrations()
- Specified by:
getServletRegistrationsin interfacejavax.servlet.ServletContext
-
addFilter
public javax.servlet.FilterRegistration.Dynamic addFilter(String s, String s1)
- Specified by:
addFilterin interfacejavax.servlet.ServletContext
-
addFilter
public javax.servlet.FilterRegistration.Dynamic addFilter(String s, javax.servlet.Filter filter)
- Specified by:
addFilterin interfacejavax.servlet.ServletContext
-
addFilter
public javax.servlet.FilterRegistration.Dynamic addFilter(String s, Class<? extends javax.servlet.Filter> aClass)
- Specified by:
addFilterin interfacejavax.servlet.ServletContext
-
createFilter
public <T extends javax.servlet.Filter> T createFilter(Class<T> aClass) throws javax.servlet.ServletException
- Specified by:
createFilterin interfacejavax.servlet.ServletContext- Throws:
javax.servlet.ServletException
-
getFilterRegistration
public javax.servlet.FilterRegistration getFilterRegistration(String s)
- Specified by:
getFilterRegistrationin interfacejavax.servlet.ServletContext
-
getFilterRegistrations
public Map<String,? extends javax.servlet.FilterRegistration> getFilterRegistrations()
- Specified by:
getFilterRegistrationsin interfacejavax.servlet.ServletContext
-
getSessionCookieConfig
public javax.servlet.SessionCookieConfig getSessionCookieConfig()
- Specified by:
getSessionCookieConfigin interfacejavax.servlet.ServletContext
-
setSessionTrackingModes
public void setSessionTrackingModes(Set<javax.servlet.SessionTrackingMode> set)
- Specified by:
setSessionTrackingModesin interfacejavax.servlet.ServletContext
-
getDefaultSessionTrackingModes
public Set<javax.servlet.SessionTrackingMode> getDefaultSessionTrackingModes()
- Specified by:
getDefaultSessionTrackingModesin interfacejavax.servlet.ServletContext
-
getEffectiveSessionTrackingModes
public Set<javax.servlet.SessionTrackingMode> getEffectiveSessionTrackingModes()
- Specified by:
getEffectiveSessionTrackingModesin interfacejavax.servlet.ServletContext
-
addListener
public void addListener(String s)
- Specified by:
addListenerin interfacejavax.servlet.ServletContext
-
addListener
public <T extends EventListener> void addListener(T t)
- Specified by:
addListenerin interfacejavax.servlet.ServletContext
-
addListener
public void addListener(Class<? extends EventListener> aClass)
- Specified by:
addListenerin interfacejavax.servlet.ServletContext
-
createListener
public <T extends EventListener> T createListener(Class<T> aClass) throws javax.servlet.ServletException
- Specified by:
createListenerin interfacejavax.servlet.ServletContext- Throws:
javax.servlet.ServletException
-
getJspConfigDescriptor
public javax.servlet.descriptor.JspConfigDescriptor getJspConfigDescriptor()
- Specified by:
getJspConfigDescriptorin interfacejavax.servlet.ServletContext
-
getClassLoader
public ClassLoader getClassLoader()
- Specified by:
getClassLoaderin interfacejavax.servlet.ServletContext
-
declareRoles
public void declareRoles(String... strings)
- Specified by:
declareRolesin interfacejavax.servlet.ServletContext
-
getVirtualServerName
public String getVirtualServerName()
- Specified by:
getVirtualServerNamein interfacejavax.servlet.ServletContext
-
-