## org.apache.catalina.ha
Interface ClusterDeployer

All Superinterfaces:
  ChannelListener

All Known Implementing Classes:
  FarmWarDeployer

    public interface ClusterDeployer

extends ChannelListener

Field Summary
`static java.lang.String` `info` Descriptive information about this component implementation.

Method Summary
`void` `backgroundProcess()` call from container Background Process
`CatalinaCluster` `getCluster()` Returns the cluster the cluster deployer is associated with
`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 and all the other members of the cluster with the specified context path.
`void` `remove(java.lang.String contextPath, boolean undeploy)` Remove an existing web application, attached to the specified context path.
`void` `setCluster(CatalinaCluster cluster)` Associates the cluster deployer with a cluster
`void` `start()` Start the cluster deployer, the owning container will invoke this
`void` `stop()` Stops the cluster deployer, the owning container will invoke this

Methods inherited from interface org.apache.catalina.tribes.ChannelListener
`accept, equals, hashCode, messageReceived`

Field Detail

### info

    static final java.lang.String info

  Descriptive information about this component implementation.

  See Also:
    Constant Field Values

Method Detail

### start

    void start()
               throws java.lang.Exception

  Start the cluster deployer, the owning container will invoke this

  Throws:
    `java.lang.Exception` - - if failure to start cluster

### stop

    void stop()
              throws LifecycleException

  Stops the cluster deployer, the owning container will invoke this

  Throws:
    `LifecycleException`

### install

    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 and all the other members of the cluster 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 locally, 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.IllegalStateException` - 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

### remove

    void remove(java.lang.String contextPath,
                boolean undeploy)
                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. 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 removed
    `undeploy` - boolean flag to remove web application from server
  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

### backgroundProcess

    void backgroundProcess()

  call from container Background Process

### getCluster

    CatalinaCluster getCluster()

  Returns the cluster the cluster deployer is associated with

  Returns:
    CatalinaCluster

### setCluster

    void setCluster(CatalinaCluster cluster)

  Associates the cluster deployer with a cluster

  Parameters:
    `cluster` - CatalinaCluster

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