org.apache.catalina.startup
Class HostConfig

java.lang.Object
  extended byorg.apache.catalina.startup.HostConfig
All Implemented Interfaces:
LifecycleListener

public class HostConfig
extends java.lang.Object
implements LifecycleListener

Startup event listener for a Host that configures the properties of that Host, and the associated defined contexts.

Version:
$Revision: 1.27 $ $Date: 2004/01/13 16:57:16 $
Author:
Craig R. McClanahan, Remy Maucherat

Field Summary
protected  java.lang.String configClass
          The Java class name of the Context configuration class we should use.
protected  java.lang.String contextClass
          The Java class name of the Context implementation we should use.
protected  int debug
          The debugging detail level for this component.
protected  java.util.ArrayList deployed
          The names of applications that we have auto-deployed (to avoid double deployment attempts).
protected  Host host
          The Host we are associated with.
protected static StringManager sm
          The string resources for this package.
 
Constructor Summary
HostConfig()
           
 
Method Summary
protected  java.io.File appBase()
          Return a File object representing the "application root" directory for our associated Host.
protected  void check()
          Deploy webapps.
protected  void checkContextLastModified()
          Check deployment descriptors last modified date.
protected  java.io.File configBase()
          Return a File object representing the "configuration root" directory for our associated Host.
protected  void deployApps()
          Deploy applications for any directories or WAR files that are found in our "application root" directory.
protected  void deployDescriptors(java.io.File configBase, java.lang.String[] files)
          Deploy XML context descriptors.
protected  void deployDirectories(java.io.File appBase, java.lang.String[] files)
          Deploy directories.
protected  void deployWARs(java.io.File appBase, java.lang.String[] files)
          Deploy WAR files.
protected  void expand(java.io.InputStream input, java.io.File docBase, java.lang.String name)
          Expand the specified input stream into the specified directory, creating a file named from the specified relative path.
protected  java.lang.String expand(java.net.URL war)
          Expand the WAR file found at the specified URL into an unpacked directory structure, and return the absolute pathname to the expanded directory.
 java.lang.String getConfigClass()
          Return the Context configuration class name.
 java.lang.String getContextClass()
          Return the Context implementation class name.
 int getDebug()
          Return the debugging detail level for this component.
 boolean getXmlNamespaceAware()
          Get the server.xml attribute's xmlNamespaceAware.
 boolean getXmlValidation()
          Get the server.xml attribute's xmlValidation.
 boolean isDeployXML()
          Return the deploy XML config file flag for this component.
 boolean isUnpackWARs()
          Return the unpack WARs flag.
 void lifecycleEvent(LifecycleEvent event)
          Process the START event for an associated Host.
protected  void log(java.lang.String message)
          Log a message on the Logger associated with our Host (if any)
protected  void log(java.lang.String message, java.lang.Throwable throwable)
          Log a message on the Logger associated with our Host (if any)
protected  boolean restartContext(Context context)
           
 void setConfigClass(java.lang.String configClass)
          Set the Context configuration class name.
 void setContextClass(java.lang.String contextClass)
          Set the Context implementation class name.
 void setDebug(int debug)
          Set the debugging detail level for this component.
 void setDeployXML(boolean deployXML)
          Set the deploy XML config file flag for this component.
 void setUnpackWARs(boolean unpackWARs)
          Set the unpack WARs flag.
 void setXmlNamespaceAware(boolean xmlNamespaceAware)
          Set the namespace aware feature of the XML parser used when parsing xml instances.
 void setXmlValidation(boolean xmlValidation)
          Set the validation feature of the XML parser used when parsing xml instances.
 void start()
          Process a "start" event for this Host.
 void stop()
          Process a "stop" event for this Host.
protected  void undeployApps()
          Undeploy all deployed applications.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

configClass

protected java.lang.String configClass
The Java class name of the Context configuration class we should use.


contextClass

protected java.lang.String contextClass
The Java class name of the Context implementation we should use.


debug

protected int debug
The debugging detail level for this component.


deployed

protected java.util.ArrayList deployed
The names of applications that we have auto-deployed (to avoid double deployment attempts).


host

protected Host host
The Host we are associated with.


sm

protected static final StringManager sm
The string resources for this package.

Constructor Detail

HostConfig

public HostConfig()
Method Detail

getConfigClass

public java.lang.String getConfigClass()
Return the Context configuration class name.


setConfigClass

public void setConfigClass(java.lang.String configClass)
Set the Context configuration class name.

Parameters:
configClass - The new Context configuration class name.

getContextClass

public java.lang.String getContextClass()
Return the Context implementation class name.


setContextClass

public void setContextClass(java.lang.String contextClass)
Set the Context implementation class name.

Parameters:
contextClass - The new Context implementation class name.

getDebug

public int getDebug()
Return the debugging detail level for this component.


setDebug

public void setDebug(int debug)
Set the debugging detail level for this component.

Parameters:
debug - The new debugging detail level

isDeployXML

public boolean isDeployXML()
Return the deploy XML config file flag for this component.


setDeployXML

public void setDeployXML(boolean deployXML)
Set the deploy XML config file flag for this component.

Parameters:
deployXML - The new deploy XML flag

isUnpackWARs

public boolean isUnpackWARs()
Return the unpack WARs flag.


setUnpackWARs

public void setUnpackWARs(boolean unpackWARs)
Set the unpack WARs flag.

Parameters:
unpackWARs - The new unpack WARs flag

setXmlValidation

public void setXmlValidation(boolean xmlValidation)
Set the validation feature of the XML parser used when parsing xml instances.

Parameters:
xmlValidation - true to enable xml instance validation

getXmlValidation

public boolean getXmlValidation()
Get the server.xml attribute's xmlValidation.

Returns:
true if validation is enabled.

getXmlNamespaceAware

public boolean getXmlNamespaceAware()
Get the server.xml attribute's xmlNamespaceAware.

Returns:
true if namespace awarenes is enabled.

setXmlNamespaceAware

public void setXmlNamespaceAware(boolean xmlNamespaceAware)
Set the namespace aware feature of the XML parser used when parsing xml instances.

Parameters:
xmlNamespaceAware - true to enable namespace awareness

lifecycleEvent

public void lifecycleEvent(LifecycleEvent event)
Process the START event for an associated Host.

Specified by:
lifecycleEvent in interface LifecycleListener
Parameters:
event - The lifecycle event that has occurred

appBase

protected java.io.File appBase()
Return a File object representing the "application root" directory for our associated Host.


configBase

protected java.io.File configBase()
Return a File object representing the "configuration root" directory for our associated Host.


deployApps

protected void deployApps()
Deploy applications for any directories or WAR files that are found in our "application root" directory.


deployDescriptors

protected void deployDescriptors(java.io.File configBase,
                                 java.lang.String[] files)
Deploy XML context descriptors.


deployWARs

protected void deployWARs(java.io.File appBase,
                          java.lang.String[] files)
Deploy WAR files.


deployDirectories

protected void deployDirectories(java.io.File appBase,
                                 java.lang.String[] files)
Deploy directories.


checkContextLastModified

protected void checkContextLastModified()
Check deployment descriptors last modified date.


restartContext

protected boolean restartContext(Context context)

expand

protected java.lang.String expand(java.net.URL war)
                           throws java.io.IOException
Expand the WAR file found at the specified URL into an unpacked directory structure, and return the absolute pathname to the expanded directory.

Parameters:
war - URL of the web application archive to be expanded (must start with "jar:")
Throws:
java.lang.IllegalArgumentException - if this is not a "jar:" URL
java.io.IOException - if an input/output error was encountered during expansion

expand

protected void expand(java.io.InputStream input,
                      java.io.File docBase,
                      java.lang.String name)
               throws java.io.IOException
Expand the specified input stream into the specified directory, creating a file named from the specified relative path.

Parameters:
input - InputStream to be copied
docBase - Document base directory into which we are expanding
name - Relative pathname of the file to be created
Throws:
java.io.IOException - if an input/output error occurs

log

protected void log(java.lang.String message)
Log a message on the Logger associated with our Host (if any)

Parameters:
message - Message to be logged

log

protected void log(java.lang.String message,
                   java.lang.Throwable throwable)
Log a message on the Logger associated with our Host (if any)

Parameters:
message - Message to be logged
throwable - Associated exception

start

public void start()
Process a "start" event for this Host.


stop

public void stop()
Process a "stop" event for this Host.


undeployApps

protected void undeployApps()
Undeploy all deployed applications.


check

protected void check()
Deploy webapps.



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