public class ContextConfig extends java.lang.Object implements LifecycleListener
Modifier and Type | Field and Description |
---|---|
protected static java.util.Properties |
authenticators
The set of Authenticators that we know how to configure.
|
protected Context |
context
The Context we are associated with.
|
protected java.util.Map<java.lang.String,Authenticator> |
customAuthenticators
Custom mappings of login methods to authenticators
|
protected java.lang.String |
defaultContextXml
Deprecated.
Unnecessary
|
protected java.lang.String |
defaultWebXml
The default web application's deployment descriptor location.
|
protected static long |
deploymentCount
Deployment count.
|
protected static LoginConfig |
DUMMY_LOGIN_CONFIG |
protected boolean |
handlesTypesAnnotations
Flag that indicates if at least one
HandlesTypes entry is present
that represents an annotation. |
protected boolean |
handlesTypesNonAnnotations
Flag that indicates if at least one
HandlesTypes entry is present
that represents a non-annotation. |
protected static java.util.Map<Host,org.apache.catalina.startup.ContextConfig.DefaultWebXmlCacheEntry> |
hostWebXmlCache
Cache of default web.xml fragments per Host
|
protected java.util.Map<ServletContainerInitializer,java.util.Set<java.lang.Class<?>>> |
initializerClassMap
Map of ServletContainerInitializer to classes they expressed interest in.
|
protected java.util.Map<java.lang.String,org.apache.catalina.startup.ContextConfig.JavaClassCacheEntry> |
javaClassCache
Cache of JavaClass objects (byte code) by fully qualified class name.
|
protected boolean |
ok
Track any fatal errors during startup configuration processing.
|
protected java.lang.String |
originalDocBase
Original docBase.
|
protected static StringManager |
sm
The string resources for this package.
|
protected java.util.Map<java.lang.Class<?>,java.util.Set<ServletContainerInitializer>> |
typeInitializerMap
Map of Types to ServletContainerInitializer that are interested in those
types.
|
protected Digester |
webDigester
The
Digester we will use to process web application
deployment descriptor files. |
protected Digester |
webFragmentDigester
The
Digester we will use to process web fragment
deployment descriptor files. |
protected WebRuleSet |
webFragmentRuleSet |
protected WebRuleSet |
webRuleSet |
Constructor and Description |
---|
ContextConfig() |
Modifier and Type | Method and Description |
---|---|
protected void |
antiLocking() |
protected void |
applicationAnnotationsConfig()
Process the application classes annotations, if it exists.
|
protected void |
authenticatorConfig()
Set up an Authenticator automatically if required, and one has not
already been configured.
|
protected void |
beforeStart()
Process a "before start" event for this Context.
|
protected void |
checkHandlesTypes(JavaClass javaClass)
For classes packaged with the web application, the class and each
super class needs to be checked for a match with
HandlesTypes or
for an annotation that matches HandlesTypes . |
protected void |
configureStart()
Process a "contextConfig" event for this Context.
|
protected void |
configureStop()
Process a "stop" event for this Context.
|
protected void |
contextConfig(Digester digester)
Process the default configuration file, if it exists.
|
protected Digester |
createContextDigester()
Create (if necessary) and return a Digester configured to process the
context configuration descriptor for an application.
|
protected WebXml |
createWebXml() |
void |
createWebXmlDigester(boolean namespaceAware,
boolean validation)
Create and return a Digester configured to process the
web application deployment descriptor (web.xml).
|
protected void |
destroy()
Process a "destroy" event for this Context.
|
protected void |
fixDocBase()
Adjust docBase.
|
protected java.lang.String |
getBaseDir() |
protected java.io.File |
getConfigBase()
Deprecated.
Unused - will be removed in 8.0.x
|
protected org.xml.sax.InputSource |
getContextWebXmlSource()
Identify the application web.xml to be used and obtain an input source
for it.
|
java.lang.String |
getDefaultContextXml()
Deprecated.
Never changed from default
|
java.lang.String |
getDefaultWebXml()
Return the location of the default deployment descriptor
|
protected org.xml.sax.InputSource |
getGlobalWebXmlSource()
Identify the default web.xml to be used and obtain an input source for
it.
|
protected java.io.File |
getHostConfigBase() |
protected org.xml.sax.InputSource |
getHostWebXmlSource()
Identify the host web.xml to be used and obtain an input source for
it.
|
protected org.xml.sax.InputSource |
getWebXmlSource(java.lang.String filename,
java.lang.String path) |
protected void |
init()
Process a "init" event for this Context.
|
void |
lifecycleEvent(LifecycleEvent event)
Process events for an associated Context.
|
protected void |
parseWebXml(org.xml.sax.InputSource source,
WebXml dest,
boolean fragment)
Parses the given source and stores the parsed data in the given web.xml
representation.
|
protected void |
processAnnotations(java.util.Set<WebXml> fragments,
boolean handlesTypesOnly) |
protected void |
processAnnotationsFile(java.io.File file,
WebXml fragment,
boolean handlesTypesOnly) |
protected void |
processAnnotationsJar(java.net.URL url,
WebXml fragment,
boolean handlesTypesOnly) |
protected void |
processAnnotationsJndi(java.net.URL url,
WebXml fragment,
boolean handlesTypesOnly) |
protected void |
processAnnotationsStream(java.io.InputStream is,
WebXml fragment,
boolean handlesTypesOnly) |
protected java.lang.String[] |
processAnnotationsStringArray(ElementValue ev) |
protected void |
processAnnotationsUrl(java.net.URL url,
WebXml fragment,
boolean handlesTypesOnly) |
protected void |
processAnnotationWebFilter(java.lang.String className,
AnnotationEntry ae,
WebXml fragment)
process filter annotation and merge with existing one!
|
protected java.util.Map<java.lang.String,java.lang.String> |
processAnnotationWebInitParams(ElementValue ev) |
protected void |
processAnnotationWebServlet(java.lang.String className,
AnnotationEntry ae,
WebXml fragment) |
protected void |
processContextConfig(Digester digester,
java.net.URL contextXml)
Process a context.xml.
|
protected java.util.Map<java.lang.String,WebXml> |
processJarsForWebFragments(WebXml application)
Scan /WEB-INF/lib for JARs and for each one found add it and any
/META-INF/web-fragment.xml to the resulting Map. web-fragment.xml files
will be parsed before being added to the map.
|
protected void |
processResourceJARs(java.util.Set<WebXml> fragments)
Scan JARs that contain web-fragment.xml files that will be used to
configure this application to see if they also contain static resources.
|
protected void |
processServletContainerInitializers()
Scan JARs for ServletContainerInitializer implementations.
|
void |
setCustomAuthenticators(java.util.Map<java.lang.String,Authenticator> customAuthenticators)
Sets custom mappings of login methods to authenticators.
|
void |
setDefaultContextXml(java.lang.String path)
Deprecated.
Unused
|
void |
setDefaultWebXml(java.lang.String path)
Set the location of the default deployment descriptor
|
protected void |
validateSecurityRoles()
Validate the usage of security role names in the web application
deployment descriptor.
|
protected void |
webConfig()
Scan the web.xml files that apply to the web application and merge them
using the rules defined in the spec.
|
protected static final StringManager sm
protected static final LoginConfig DUMMY_LOGIN_CONFIG
protected static final java.util.Properties authenticators
protected static long deploymentCount
protected static final java.util.Map<Host,org.apache.catalina.startup.ContextConfig.DefaultWebXmlCacheEntry> hostWebXmlCache
protected java.util.Map<java.lang.String,Authenticator> customAuthenticators
protected Context context
@Deprecated protected java.lang.String defaultContextXml
protected java.lang.String defaultWebXml
protected boolean ok
protected java.lang.String originalDocBase
protected final java.util.Map<ServletContainerInitializer,java.util.Set<java.lang.Class<?>>> initializerClassMap
protected final java.util.Map<java.lang.Class<?>,java.util.Set<ServletContainerInitializer>> typeInitializerMap
protected final java.util.Map<java.lang.String,org.apache.catalina.startup.ContextConfig.JavaClassCacheEntry> javaClassCache
HandlesTypes
.protected boolean handlesTypesAnnotations
HandlesTypes
entry is present
that represents an annotation.protected boolean handlesTypesNonAnnotations
HandlesTypes
entry is present
that represents a non-annotation.protected Digester webDigester
Digester
we will use to process web application
deployment descriptor files.protected WebRuleSet webRuleSet
protected Digester webFragmentDigester
Digester
we will use to process web fragment
deployment descriptor files.protected WebRuleSet webFragmentRuleSet
public java.lang.String getDefaultWebXml()
public void setDefaultWebXml(java.lang.String path)
path
- Absolute/relative path to the default web.xml@Deprecated public java.lang.String getDefaultContextXml()
@Deprecated public void setDefaultContextXml(java.lang.String path)
path
- Absolute/relative path to the default context.xmlpublic void setCustomAuthenticators(java.util.Map<java.lang.String,Authenticator> customAuthenticators)
customAuthenticators
- Custom mappings of login methods to
authenticatorspublic void lifecycleEvent(LifecycleEvent event)
lifecycleEvent
in interface LifecycleListener
event
- The lifecycle event that has occurredprotected void applicationAnnotationsConfig()
protected void authenticatorConfig()
public void createWebXmlDigester(boolean namespaceAware, boolean validation)
protected Digester createContextDigester()
protected java.lang.String getBaseDir()
protected void contextConfig(Digester digester)
protected void processContextConfig(Digester digester, java.net.URL contextXml)
protected void fixDocBase() throws java.io.IOException
java.io.IOException
protected void antiLocking()
protected void init()
protected void beforeStart()
protected void configureStart()
protected void configureStop()
protected void destroy()
protected void validateSecurityRoles()
ok
instance variable to false
as well).@Deprecated protected java.io.File getConfigBase()
protected java.io.File getHostConfigBase()
protected void webConfig()
protected WebXml createWebXml()
protected void processServletContainerInitializers()
protected void processResourceJARs(java.util.Set<WebXml> fragments)
protected org.xml.sax.InputSource getGlobalWebXmlSource()
protected org.xml.sax.InputSource getHostWebXmlSource()
protected org.xml.sax.InputSource getContextWebXmlSource()
protected org.xml.sax.InputSource getWebXmlSource(java.lang.String filename, java.lang.String path)
filename
- Name of the file (possibly with one or more leading path
segments) to readpath
- Location that filename is relative toprotected void parseWebXml(org.xml.sax.InputSource source, WebXml dest, boolean fragment)
source
- Input source containing the XML data to be parseddest
- The object representation of common elements of web.xml and
web-fragment.xmlfragment
- Specifies whether the source is web-fragment.xml or
web.xmlprotected java.util.Map<java.lang.String,WebXml> processJarsForWebFragments(WebXml application)
null
will be used if no web-fragment.xml was found. Any JARs
known not contain fragments will be skipped.protected void processAnnotations(java.util.Set<WebXml> fragments, boolean handlesTypesOnly)
protected void processAnnotationsUrl(java.net.URL url, WebXml fragment, boolean handlesTypesOnly)
protected void processAnnotationsJar(java.net.URL url, WebXml fragment, boolean handlesTypesOnly)
protected void processAnnotationsJndi(java.net.URL url, WebXml fragment, boolean handlesTypesOnly)
protected void processAnnotationsFile(java.io.File file, WebXml fragment, boolean handlesTypesOnly)
protected void processAnnotationsStream(java.io.InputStream is, WebXml fragment, boolean handlesTypesOnly) throws ClassFormatException, java.io.IOException
ClassFormatException
java.io.IOException
protected void checkHandlesTypes(JavaClass javaClass)
HandlesTypes
or
for an annotation that matches HandlesTypes
.javaClass
- protected void processAnnotationWebServlet(java.lang.String className, AnnotationEntry ae, WebXml fragment)
protected void processAnnotationWebFilter(java.lang.String className, AnnotationEntry ae, WebXml fragment)
className
- ae
- fragment
- protected java.lang.String[] processAnnotationsStringArray(ElementValue ev)
protected java.util.Map<java.lang.String,java.lang.String> processAnnotationWebInitParams(ElementValue ev)
Copyright © 2000-2015 Apache Software Foundation. All Rights Reserved.