Package org.apache.catalina

## Enum LifecycleState

- java.lang.Object
- - java.lang.Enum<LifecycleState>
  - - org.apache.catalina.LifecycleState

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<LifecycleState>`

      public enum LifecycleState
      extends java.lang.Enum<LifecycleState>

  The list of valid states for components that implement `Lifecycle`. See `Lifecycle` for the state transition diagram.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `DESTROYED` |
    `DESTROYING` |
    `FAILED` |
    `INITIALIZED` |
    `INITIALIZING` |
    `NEW` |
    `STARTED` |
    `STARTING` |
    `STARTING_PREP` |
    `STOPPED` |
    `STOPPING` |
    `STOPPING_PREP` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getLifecycleEvent()` |
    `boolean` | `isAvailable()` | May the public methods other than property getters/setters and lifecycle methods be called for a component in this state?
    `static LifecycleState` | `valueOf​(java.lang.String name)` | Returns the enum constant of this type with the specified name.
    `static LifecycleState[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NEW

          public static final LifecycleState NEW

    - #### INITIALIZING

          public static final LifecycleState INITIALIZING

    - #### INITIALIZED

          public static final LifecycleState INITIALIZED

    - #### STARTING_PREP

          public static final LifecycleState STARTING_PREP

    - #### STARTING

          public static final LifecycleState STARTING

    - #### STARTED

          public static final LifecycleState STARTED

    - #### STOPPING_PREP

          public static final LifecycleState STOPPING_PREP

    - #### STOPPING

          public static final LifecycleState STOPPING

    - #### STOPPED

          public static final LifecycleState STOPPED

    - #### DESTROYING

          public static final LifecycleState DESTROYING

    - #### DESTROYED

          public static final LifecycleState DESTROYED

    - #### FAILED

          public static final LifecycleState FAILED

  - ### Method Detail

    - #### values

          public static LifecycleState[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (LifecycleState c : LifecycleState.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static LifecycleState valueOf​(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

    - #### isAvailable

          public boolean isAvailable()

      May the public methods other than property getters/setters and lifecycle methods be called for a component in this state? It returns `true` for any component in any of the following states:
      - `STARTING`
      - `STARTED`
      - `STOPPING_PREP`
      Returns:
        `true` if the component is available for use, otherwise `false`

    - #### getLifecycleEvent

          public java.lang.String getLifecycleEvent()