## org.apache.catalina
Interface Deployer

All Superinterfaces:
  Container

All Known Implementing Classes:
  StandardHost

public interface Deployer
extends Container

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.4 $ $Date: 2001/07/22 20:13:30 $
Author:
  Craig R. McClanahan

Field Summary
`static java.lang.String` `INSTALL_EVENT` The ContainerEvent event type sent when a new application is installed by `install()`.
`static java.lang.String` `REMOVE_EVENT` The ContainerEvent event type sent when an existing application is removed by `remove()`.

Fields inherited from interface org.apache.catalina.Container
`ADD_CHILD_EVENT, ADD_MAPPER_EVENT, ADD_VALVE_EVENT, REMOVE_CHILD_EVENT, REMOVE_MAPPER_EVENT, REMOVE_VALVE_EVENT`

Method Summary
`Context` `findDeployedApp(java.lang.String contextPath)` Return the Context for the deployed application that is associated with the specified context path (if any); otherwise return `null`.
`java.lang.String[]` `findDeployedApps()` Return the context paths of all deployed web applications in this Container.
`void` `install(java.lang.String contextPath, java.net.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` `remove(java.lang.String contextPath)` Remove an existing web application, attached to the specified context path.
`void` `start(java.lang.String contextPath)` Start an existing web application, attached to the specified context path.
`void` `stop(java.lang.String contextPath)` Stop an existing web application, attached to the specified context path.

Methods inherited from interface org.apache.catalina.Container

`addChild, addContainerListener, addMapper, addPropertyChangeListener, findChild, findChildren, findMapper, findMappers, getCluster, getInfo, getLoader, getLogger, getManager, getName, getParent, getParentClassLoader, getRealm, getResources, invoke, map, removeChild, removeContainerListener, removeMapper, removePropertyChangeListener, setCluster, setLoader, setLogger, setManager, setName, setParent, setParentClassLoader, setRealm, setResources`

Field Detail

### INSTALL_EVENT

    public static final java.lang.String INSTALL_EVENT

  The ContainerEvent event type sent when a new application is installed by `install()`.

  See Also:
    Constant Field Values

### REMOVE_EVENT

    public static final java.lang.String REMOVE_EVENT

  The ContainerEvent event type sent when an existing application is removed by `remove()`.

  See Also:
    Constant Field Values

Method Detail

### install

    public void install(java.lang.String contextPath,
                        java.net.URL war)
                 throws java.io.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 created `Context` 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:
    `java.lang.IllegalArgumentException` - if the specified context path is malformed (it must be "" or start with a slash)
    `java.lang.IllegalArgumentException` - if the specified context path is already attached to an existing web application
    `java.io.IOException` - if an input/output error was encountered during installation

### findDeployedApp

    public Context findDeployedApp(java.lang.String contextPath)

  Return the Context for the deployed application that is associated with the specified context path (if any); otherwise return `null`.

  Parameters:
    `contextPath` - The context path of the requested web application

### findDeployedApps

    public java.lang.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

    public void remove(java.lang.String contextPath)
                throws java.io.IOException

  Remove an existing web application, attached to the specified context path. If this application is successfully removed, a ContainerEvent of type `REMOVE_EVENT` will be sent to all registered listeners, with the removed `Context` as an argument.

  Parameters:
    `contextPath` - The context path of the application to be removed
  Throws:
    `java.lang.IllegalArgumentException` - if the specified context path is malformed (it must be "" or start with a slash)
    `java.lang.IllegalArgumentException` - if the specified context path does not identify a currently installed web application
    `java.io.IOException` - if an input/output error occurs during removal

### start

    public void start(java.lang.String contextPath)
               throws java.io.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:
    `java.lang.IllegalArgumentException` - if the specified context path is malformed (it must be "" or start with a slash)
    `java.lang.IllegalArgumentException` - if the specified context path does not identify a currently installed web application
    `java.io.IOException` - if an input/output error occurs during startup

### stop

    public void stop(java.lang.String contextPath)
              throws java.io.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:
    `java.lang.IllegalArgumentException` - if the specified context path is malformed (it must be "" or start with a slash)
    `java.lang.IllegalArgumentException` - if the specified context path does not identify a currently installed web application
    `java.io.IOException` - if an input/output error occurs while stopping the web application

Copyright © 2000-2001 Apache Software Foundation. All Rights Reserved.