Class WebInfConfiguration
- All Implemented Interfaces:
Configuration
- Direct Known Subclasses:
AntWebInfConfiguration
,OSGiWebInfConfiguration
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.jetty.webapp.Configuration
Configuration.Wrapper, Configuration.WrapperFunction
-
Field Summary
Fields inherited from interface org.eclipse.jetty.webapp.Configuration
ATTR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
cloneConfigure
(WebAppContext template, WebAppContext context) void
configure
(WebAppContext context) Configure WebApp.void
configureTempDirectory
(File dir, WebAppContext context) void
deconfigure
(WebAppContext context) DeConfigure WebApp.static String
Create a canonical name for a webapp temp directory.protected static String
getResourceBaseName
(Resource resource) void
makeTempDirectory
(File parent, WebAppContext context) void
preConfigure
(WebAppContext context) Set up for configuration.void
resolveTempDirectory
(WebAppContext context) Get a temporary directory in which to unpack the war etc etc.void
unpack
(WebAppContext context) Methods inherited from class org.eclipse.jetty.webapp.AbstractConfiguration
abort, addDependencies, addDependencies, addDependents, addDependents, destroy, expose, getDependencies, getDependents, getServerClasses, getSystemClasses, hide, isEnabledByDefault, postConfigure, protect, protectAndExpose
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.jetty.webapp.Configuration
isAvailable, replaces
-
Field Details
-
TEMPDIR_CONFIGURED
- See Also:
-
TEMPORARY_RESOURCE_BASE
- See Also:
-
_preUnpackBaseResource
-
-
Constructor Details
-
WebInfConfiguration
public WebInfConfiguration()
-
-
Method Details
-
preConfigure
Description copied from interface:Configuration
Set up for configuration.Typically this step discovers configuration resources. Calls to preConfigure may alter the Configurations configured on the WebAppContext, so long as configurations prior to this configuration are not altered.
- Specified by:
preConfigure
in interfaceConfiguration
- Overrides:
preConfigure
in classAbstractConfiguration
- Parameters:
context
- The context to configure- Throws:
Exception
- if unable to pre configure
-
configure
Description copied from interface:Configuration
Configure WebApp.Typically this step applies the discovered configuration resources to either the
WebAppContext
or the associatedMetaData
.- Specified by:
configure
in interfaceConfiguration
- Overrides:
configure
in classAbstractConfiguration
- Parameters:
context
- The context to configure- Throws:
Exception
- if unable to configure
-
deconfigure
Description copied from interface:Configuration
DeConfigure WebApp. This method is called to undo all configuration done. This is called to allow the context to work correctly over a stop/start cycle- Specified by:
deconfigure
in interfaceConfiguration
- Overrides:
deconfigure
in classAbstractConfiguration
- Parameters:
context
- The context to configure- Throws:
Exception
- if unable to deconfigure
-
cloneConfigure
- Overrides:
cloneConfigure
in classAbstractConfiguration
- Throws:
Exception
-
resolveTempDirectory
Get a temporary directory in which to unpack the war etc etc. The algorithm for determining this is to check these alternatives in the order shown:A. Try to use an explicit directory specifically for this webapp:
- Iff an explicit directory is set for this webapp, use it. Set delete on exit depends on value of persistTempDirectory.
- Iff "jakarta.servlet.context.tempdir" context attribute is set for this webapp && exists && writeable, then use it. Set delete on exit depends on value of persistTempDirectory.
B. Create a directory based on global settings. The new directory will be called
"Jetty-"+host+"-"+port+"__"+context+"-"+virtualhost+"-"+randomdigits+".dir"
If the user has specified the context attribute org.eclipse.jetty.webapp.basetempdir, the directory specified by this attribute will be the parent of the temp dir created. Otherwise, the parent dir is
${java.io.tmpdir}
. Set delete on exit depends on value of persistTempDirectory.- Parameters:
context
- the context to resolve the temp directory from- Throws:
Exception
- if unable to resolve the temp directory
-
makeTempDirectory
- Throws:
Exception
-
configureTempDirectory
-
unpack
- Throws:
IOException
-
getCanonicalNameForWebAppTmpDir
Create a canonical name for a webapp temp directory.The form of the name is:
"jetty-"+host+"-"+port+"-"+resourceBase+"-_"+context+"-"+virtualhost+"-"+randomdigits+".dir"
host and port uniquely identify the server context and virtual host uniquely identify the webapp randomdigits ensure every tmp directory is unique- Parameters:
context
- the context to get the canonical name from- Returns:
- the canonical name for the webapp temp directory
-
getResourceBaseName
-