Package org.apache.catalina
Interface Deployer
-
- All Known Implementing Classes:
PEVirtualServer
,StandardHost
,StandardHostDeployer
,VirtualServer
public interface Deployer
A Deployer is a specialized Container into which web applications can be deployed and undeployed. Such a Container will create and install child Context instances for each deployed application. The unique key for each web application will be the context path to which it is attached.- Version:
- $Revision: 1.2 $ $Date: 2005/12/08 01:27:15 $
- Author:
- Craig R. McClanahan
-
-
Field Summary
Fields Modifier and Type Field Description static String
INSTALL_EVENT
The ContainerEvent event type sent when a new application is installed byinstall()
, after it has been started.static String
PRE_INSTALL_EVENT
The ContainerEvent event type sent when a new application is being installed byinstall()
, before it has been started.static String
REMOVE_EVENT
The ContainerEvent event type sent when an existing application is removed byremove()
.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Context
findDeployedApp(String contextPath)
Return the Context for the deployed application that is associated with the specified context path (if any); otherwise returnnull
.String[]
findDeployedApps()
Return the context paths of all deployed web applications in this Container.String
getName()
Return the name of the Container with which this Deployer is associated.void
install(String contextPath, URL war)
Install a new web application, whose web application archive is at the specified URL, into this container with the specified context path.void
install(URL config, URL war)
Install a new web application, whose context configuration file (consisting of a<Context>
element) and web application archive are at the specified URLs.void
remove(String contextPath)
Remove an existing web application, attached to the specified context path.void
remove(String contextPath, boolean undeploy)
Remove an existing web application, attached to the specified context path.void
start(String contextPath)
Start an existing web application, attached to the specified context path.void
stop(String contextPath)
Stop an existing web application, attached to the specified context path.
-
-
-
Field Detail
-
PRE_INSTALL_EVENT
static final String PRE_INSTALL_EVENT
The ContainerEvent event type sent when a new application is being installed byinstall()
, before it has been started.- See Also:
- Constant Field Values
-
INSTALL_EVENT
static final String INSTALL_EVENT
The ContainerEvent event type sent when a new application is installed byinstall()
, after it has been started.- See Also:
- Constant Field Values
-
REMOVE_EVENT
static final String REMOVE_EVENT
The ContainerEvent event type sent when an existing application is removed byremove()
.- See Also:
- Constant Field Values
-
-
Method Detail
-
getName
String getName()
Return the name of the Container with which this Deployer is associated.
-
install
void install(String contextPath, URL war) throws IOException
Install a new web application, whose web application archive is at the specified URL, into this container with the specified context path. A context path of "" (the empty string) should be used for the root application for this container. Otherwise, the context path must start with a slash.If this application is successfully installed, a ContainerEvent of type
INSTALL_EVENT
will be sent to all registered listeners, with the newly createdContext
as an argument.- Parameters:
contextPath
- The context path to which this application should be installed (must be unique)war
- A URL of type "jar:" that points to a WAR file, or type "file:" that points to an unpacked directory structure containing the web application to be installed- Throws:
IllegalArgumentException
- if the specified context path is malformed (it must be "" or start with a slash)IllegalStateException
- if the specified context path is already attached to an existing web applicationIOException
- if an input/output error was encountered during installation
-
install
void install(URL config, URL war) throws IOException
Install a new web application, whose context configuration file (consisting of a
<Context>
element) and web application archive are at the specified URLs.If this application is successfully installed, a ContainerEvent of type
INSTALL_EVENT
will be sent to all registered listeners, with the newly createdContext
as an argument.- Parameters:
config
- A URL that points to the context configuration file to be used for configuring the new Contextwar
- A URL of type "jar:" that points to a WAR file, or type "file:" that points to an unpacked directory structure containing the web application to be installed- Throws:
IllegalArgumentException
- if one of the specified URLs is nullIllegalStateException
- if the context path specified in the context configuration file is already attached to an existing web applicationIOException
- if an input/output error was encountered during installation
-
findDeployedApp
Context findDeployedApp(String contextPath)
Return the Context for the deployed application that is associated with the specified context path (if any); otherwise returnnull
.- Parameters:
contextPath
- The context path of the requested web application
-
findDeployedApps
String[] findDeployedApps()
Return the context paths of all deployed web applications in this Container. If there are no deployed applications, a zero-length array is returned.
-
remove
void remove(String contextPath) throws IOException
Remove an existing web application, attached to the specified context path. If this application is successfully removed, a ContainerEvent of typeREMOVE_EVENT
will be sent to all registered listeners, with the removedContext
as an argument.- Parameters:
contextPath
- The context path of the application to be removed- Throws:
IllegalArgumentException
- if the specified context path is malformed (it must be "" or start with a slash)IllegalArgumentException
- if the specified context path does not identify a currently installed web applicationIOException
- if an input/output error occurs during removal
-
remove
void remove(String contextPath, boolean undeploy) throws IOException
Remove an existing web application, attached to the specified context path. If this application is successfully removed, a ContainerEvent of typeREMOVE_EVENT
will be sent to all registered listeners, with the removedContext
as an argument. Deletes the web application war file and/or directory if they exist in the Host's appBase.- Parameters:
contextPath
- The context path of the application to be removedundeploy
- boolean flag to remove web application from server- Throws:
IllegalArgumentException
- if the specified context path is malformed (it must be "" or start with a slash)IllegalArgumentException
- if the specified context path does not identify a currently installed web applicationIOException
- if an input/output error occurs during removal
-
start
void start(String contextPath) throws IOException
Start an existing web application, attached to the specified context path. Only starts a web application if it is not running.- Parameters:
contextPath
- The context path of the application to be started- Throws:
IllegalArgumentException
- if the specified context path is malformed (it must be "" or start with a slash)IllegalArgumentException
- if the specified context path does not identify a currently installed web applicationIOException
- if an input/output error occurs during startup
-
stop
void stop(String contextPath) throws IOException
Stop an existing web application, attached to the specified context path. Only stops a web application if it is running.- Parameters:
contextPath
- The context path of the application to be stopped- Throws:
IllegalArgumentException
- if the specified context path is malformed (it must be "" or start with a slash)IllegalArgumentException
- if the specified context path does not identify a currently installed web applicationIOException
- if an input/output error occurs while stopping the web application
-
-