## org.apache.catalina.startup
Class Catalina

    java.lang.Object
      org.apache.catalina.startup.Catalina

Direct Known Subclasses:
  CatalinaService

public class Catalina
extends java.lang.Object

Startup/Shutdown shell program for Catalina. The following command line options are recognized:

- -config {pathname} - Set the pathname of the configuration file to be processed. If a relative path is specified, it will be interpreted as relative to the directory pathname specified by the "catalina.base" system property. [conf/server.xml]
- -help - Display usage information.
- -stop - Stop the currently running instance of Catalina.

  Version:
    $Revision: 1.56 $ $Date: 2004/08/26 21:41:12 $
  Author:
    Craig R. McClanahan

  Nested Class Summary
  `protected class` `Catalina.CatalinaShutdownHook` Shutdown hook which will perform a clean shutdown of Catalina if needed.

  Field Summary
  `protected java.lang.String` `configFile` Pathname to the server configuration file.
  `protected boolean` `debug` Set the debugging detail level on our Digester.
  `protected java.lang.ClassLoader` `parentClassLoader` The shared extensions class loader for this server.
  `protected Server` `server` The server component we are starting or stopping
  `protected boolean` `starting` Are we starting a new server?
  `protected boolean` `stopping` Are we stopping an existing server?
  `protected boolean` `useNaming` Are we using naming ?

  Constructor Summary
  `Catalina()`

  Method Summary
  `protected boolean` `arguments(java.lang.String[] args)` Process the specified command line arguments, and return `true` if we should continue processing; otherwise return `false`.
  `protected java.io.File` `configFile()` Return a File object representing our configuration file.
  `protected org.apache.commons.digester.Digester` `createStartDigester()` Create and configure the Digester we will be using for startup.
  `protected org.apache.commons.digester.Digester` `createStopDigester()` Create and configure the Digester we will be using for shutdown.
  `protected void` `execute()` Execute the processing that has been configured from the command line.
  `static void` `main(java.lang.String[] args)` The application main program.
  `void` `process(java.lang.String[] args)` The instance main program.
  `protected void` `setCatalinaBase()` Set the `catalina.base` System property to the current working directory if it has not been set.
  `protected void` `setCatalinaHome()` Set the `catalina.home` System property to the current working directory if it has not been set.
  `void` `setParentClassLoader(java.lang.ClassLoader parentClassLoader)` Set the shared extensions class loader.
  `void` `setServer(Server server)` Set the server instance we are configuring.
  `protected void` `start()` Start a new server instance.
  `protected void` `stop()` Stop an existing server instance.
  `protected void` `usage()` Print usage information for this application.

  Methods inherited from class java.lang.Object
  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  Field Detail

  ### configFile

      protected java.lang.String configFile

    Pathname to the server configuration file.

  ### debug

      protected boolean debug

    Set the debugging detail level on our Digester.

  ### parentClassLoader

      protected java.lang.ClassLoader parentClassLoader

    The shared extensions class loader for this server.

  ### server

      protected Server server

    The server component we are starting or stopping

  ### starting

      protected boolean starting

    Are we starting a new server?

  ### stopping

      protected boolean stopping

    Are we stopping an existing server?

  ### useNaming

      protected boolean useNaming

    Are we using naming ?

  Constructor Detail

  ### Catalina

      public Catalina()

  Method Detail

  ### main

      public static void main(java.lang.String[] args)

    The application main program.

    Parameters:
      `args` - Command line arguments

  ### process

      public void process(java.lang.String[] args)

    The instance main program.

    Parameters:
      `args` - Command line arguments

  ### setParentClassLoader

      public void setParentClassLoader(java.lang.ClassLoader parentClassLoader)

    Set the shared extensions class loader.

    Parameters:
      `parentClassLoader` - The shared extensions class loader.

  ### setServer

      public void setServer(Server server)

    Set the server instance we are configuring.

    Parameters:
      `server` - The new server

  ### arguments

      protected boolean arguments(java.lang.String[] args)

    Process the specified command line arguments, and return `true` if we should continue processing; otherwise return `false`.

    Parameters:
      `args` - Command line arguments to process

  ### configFile

      protected java.io.File configFile()

    Return a File object representing our configuration file.

  ### createStartDigester

      protected org.apache.commons.digester.Digester createStartDigester()

    Create and configure the Digester we will be using for startup.

  ### createStopDigester

      protected org.apache.commons.digester.Digester createStopDigester()

    Create and configure the Digester we will be using for shutdown.

  ### execute

      protected void execute()
                      throws java.lang.Exception

    Execute the processing that has been configured from the command line.

    Throws:
      `java.lang.Exception`

  ### setCatalinaBase

      protected void setCatalinaBase()

    Set the `catalina.base` System property to the current working directory if it has not been set.

  ### setCatalinaHome

      protected void setCatalinaHome()

    Set the `catalina.home` System property to the current working directory if it has not been set.

  ### start

      protected void start()

    Start a new server instance.

  ### stop

      protected void stop()

    Stop an existing server instance.

  ### usage

      protected void usage()

    Print usage information for this application.

  Copyright ? 2000-2002 Apache Software Foundation. All Rights Reserved.