org.apache.catalina

## Interface Service

- All Superinterfaces:
    Lifecycle
  All Known Implementing Classes:
    StandardService

      public interface Service
      extends Lifecycle

  A Service is a group of one or more Connectors that share a single Container to process their incoming requests. This arrangement allows, for example, a non-SSL and SSL connector to share the same population of web apps.

  A given JVM can contain any number of Service instances; however, they are completely independent of each other and share only the basic JVM facilities and classes on the system class path.

  Author:
    Craig R. McClanahan

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle

      `Lifecycle.SingleUse`

  - ### Field Summary

    - ### Fields inherited from interface org.apache.catalina.Lifecycle

      `AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addConnector(Connector connector)` Add a new Connector to the set of defined Connectors, and associate it with this Service's Container.
    `void` | `addExecutor(Executor ex)` Adds a named executor to the service
    `Connector[]` | `findConnectors()` Find and return the set of Connectors associated with this Service.
    `Executor[]` | `findExecutors()` Retrieves all executors
    `Engine` | `getContainer()`
    `String` | `getDomain()`
    `Executor` | `getExecutor(String name)` Retrieves executor by name, null if not found
    `Mapper` | `getMapper()`
    `String` | `getName()`
    `ClassLoader` | `getParentClassLoader()`
    `Server` | `getServer()`
    `void` | `removeConnector(Connector connector)` Remove the specified Connector from the set associated from this Service.
    `void` | `removeExecutor(Executor ex)` Removes an executor from the service
    `void` | `setContainer(Engine engine)` Set the `Engine` that handles requests for all `Connectors` associated with this Service.
    `void` | `setName(String name)` Set the name of this Service.
    `void` | `setParentClassLoader(ClassLoader parent)` Set the parent class loader for this service.
    `void` | `setServer(Server server)` Set the `Server` with which we are associated (if any).

    - ### Methods inherited from interface org.apache.catalina.Lifecycle

      `addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop`

- - ### Method Detail

    - #### getContainer

          Engine getContainer()

      Returns:
        the `Engine` that handles requests for all `Connectors` associated with this Service.

    - #### setContainer

          void setContainer(Engine engine)

      Set the `Engine` that handles requests for all `Connectors` associated with this Service.
      Parameters:
        `engine` - The new Engine

    - #### getName

          String getName()

      Returns:
        the name of this Service.

    - #### setName

          void setName(String name)

      Set the name of this Service.
      Parameters:
        `name` - The new service name

    - #### getServer

          Server getServer()

      Returns:
        the `Server` with which we are associated (if any).

    - #### setServer

          void setServer(Server server)

      Set the `Server` with which we are associated (if any).
      Parameters:
        `server` - The server that owns this Service

    - #### getParentClassLoader

          ClassLoader getParentClassLoader()

      Returns:
        the parent class loader for this component. If not set, return `getServer()` `Server.getParentClassLoader()`. If no server has been set, return the system class loader.

    - #### setParentClassLoader

          void setParentClassLoader(ClassLoader parent)

      Set the parent class loader for this service.
      Parameters:
        `parent` - The new parent class loader

    - #### getDomain

          String getDomain()

      Returns:
        the domain under which this container will be / has been registered.

    - #### addConnector

          void addConnector(Connector connector)

      Add a new Connector to the set of defined Connectors, and associate it with this Service's Container.
      Parameters:
        `connector` - The Connector to be added

    - #### findConnectors

          Connector[] findConnectors()

      Find and return the set of Connectors associated with this Service.
      Returns:
        the set of associated Connectors

    - #### removeConnector

          void removeConnector(Connector connector)

      Remove the specified Connector from the set associated from this Service. The removed Connector will also be disassociated from our Container.
      Parameters:
        `connector` - The Connector to be removed

    - #### addExecutor

          void addExecutor(Executor ex)

      Adds a named executor to the service
      Parameters:
        `ex` - Executor

    - #### findExecutors

          Executor[] findExecutors()

      Retrieves all executors
      Returns:
        Executor[]

    - #### getExecutor

          Executor getExecutor(String name)

      Retrieves executor by name, null if not found
      Parameters:
        `name` - String
      Returns:
        Executor

    - #### removeExecutor

          void removeExecutor(Executor ex)

      Removes an executor from the service
      Parameters:
        `ex` - Executor

    - #### getMapper

          Mapper getMapper()

      Returns:
        the mapper associated with this Service.

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