org.apache.catalina

Interface Cluster

public interface Cluster

A Cluster works as a Cluster client/server for the local host Different Cluster implementations can be used to support different ways to communicate within the Cluster. A Cluster implementation is responsible for setting up a way to communicate within the Cluster and also supply "ClientApplications" with ClusterSender used when sending information in the Cluster and ClusterInfo used for receiving information in the Cluster.

Version:
$Revision: 1.7 $, $Date: 2004/05/26 15:24:59 $

Authors:
Bip Thelin
Remy Maucherat
Filip Hanik

Method Summary

Manager
createManager(String name)
Create a new manager which will use this cluster to replicate its sessions.
String
getClusterName()
Return the name of the cluster that this Server is currently configured to operate within.
Container
getContainer()
Get the Container associated with our Cluster
int
getDebug()
Returns the debug level for this Cluster
String
getInfo()
Return descriptive information about this Cluster implementation and the corresponding version number, in the format <description>/<version>.
String
getProtocol()
Get the protocol used by the cluster.
void
installContext(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
setClusterName(String clusterName)
Set the name of the cluster to join, if no cluster with this name is present create one.
void
setContainer(Container container)
Set the Container associated with our Cluster
void
setDebug(int debug)
The debug detail level for this Cluster
void
setProtocol(String protocol)
Set the protocol parameters.
void
startContext(String contextPath)
Start an existing web application, attached to the specified context path in all the other nodes in the cluster.
void
stop(String contextPath)
Stop an existing web application, attached to the specified context path.

Method Details

createManager

public Manager createManager(String name)
Create a new manager which will use this cluster to replicate its sessions.

Parameters:
name - Name (key) of the application with which the manager is associated


getClusterName

public String getClusterName()
Return the name of the cluster that this Server is currently configured to operate within.

Returns:
The name of the cluster associated with this server


getContainer

public Container getContainer()
Get the Container associated with our Cluster

Returns:
The Container associated with our Cluster


getDebug

public int getDebug()
Returns the debug level for this Cluster

Returns:
The debug level


getInfo

public String getInfo()
Return descriptive information about this Cluster implementation and the corresponding version number, in the format <description>/<version>.


getProtocol

public String getProtocol()
Get the protocol used by the cluster.

Returns:
The protocol


installContext

public void installContext(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. 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 PRE_INSTALL_EVENT will be sent to registered listeners before the associated Context is started, and a ContainerEvent of type INSTALL_EVENT will be sent to all registered listeners after the associated Context is started, 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


setClusterName

public void setClusterName(String clusterName)
Set the name of the cluster to join, if no cluster with this name is present create one.

Parameters:
clusterName - The clustername to join


setContainer

public void setContainer(Container container)
Set the Container associated with our Cluster

Parameters:
container - The Container to use


setDebug

public void setDebug(int debug)
The debug detail level for this Cluster

Parameters:
debug - The debug level


setProtocol

public void setProtocol(String protocol)
Set the protocol parameters.

Parameters:
protocol - The protocol used by the cluster


startContext

public void startContext(String contextPath)
            throws IOException
Start an existing web application, attached to the specified context path in all the other nodes in the cluster. Only starts a web application if it is not running.

Parameters:
contextPath - The context path of the application to be started


stop

public 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


Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.