org.eclipse.jetty.util.component

## Interface LifeCycle

All Known Subinterfaces:
  AppProvider, Connector, Handler, HandlerContainer, RequestLog, Server.Graceful, SessionIdManager, SessionManager, SslConnector

All Known Implementing Classes:
  AbstractConnector, AbstractHandler, AbstractHandlerContainer, AbstractLeakPreventer, AbstractLifeCycle, AbstractNIOConnector, AbstractSessionIdManager, AbstractSessionManager, AggregateLifeCycle, Ajp13SocketConnector, AppContextLeakPreventer, AsyncNCSARequestLog, AWTLeakPreventer, BlockingChannelConnector, ConnectHandler, ConnectorServer, ConstraintSecurityHandler, ContextDeployer, ContextHandler, ContextHandlerCollection, ContextProvider, DataSourceLoginService, DebugHandler, DefaultHandler, DeploymentManager, DOMLeakPreventer, DriverManagerLeakPreventer, ErrorHandler, ErrorPageErrorHandler, ExecutorThreadPool, FilterHolder, GCThreadLeakPreventer, GzipHandler, HandlerCollection, HandlerList, HandlerWrapper, HashLoginService, HashSessionIdManager, HashSessionManager, Holder, HotSwapHandler, HttpBuffersImpl, HttpClient, InheritedChannelConnector, IPAccessHandler, JAASLoginService, Java2DLeakPreventer, JDBCLoginService, JDBCSessionIdManager, JDBCSessionManager, LDAPLeakPreventer, LocalConnector, LoginConfigurationLeakPreventer, MappedLoginService, MBeanContainer, MovedContextHandler, NCSARequestLog, NestedConnector, NetworkTrafficSelectChannelConnector, PropertyUserStore, ProxyHandler, QueuedThreadPool, RequestLogHandler, ResourceHandler, RewriteHandler, Scanner, ScanningAppProvider, ScopedHandler, SecurityHandler, SecurityProviderLeakPreventer, SelectChannelConnector, SelectorManager, Server, ServletContainerInitializerListener, ServletContextHandler, ServletHandler, ServletHandler, ServletHolder, SessionHandler, ShutdownHandler, SocketConnector, SpnegoLoginService, SslContextFactory, SslContextFactory, SslSelectChannelConnector, SslSocketConnector, StatisticsHandler, WebAppContext, WebAppDeployer, WebAppProvider, WebSocketClientFactory, WebSocketFactory, WebSocketHandler

    public interface LifeCycle

The lifecycle interface for generic components.
Classes implementing this interface have a defined life cycle defined by the methods of this interface.

### Nested Class Summary

Nested Classes
`static interface` `LifeCycle.Listener` Listener.

### Method Summary

Methods
`void` `addLifeCycleListener(LifeCycle.Listener listener)`
`boolean` `isFailed()`
`boolean` `isRunning()`
`boolean` `isStarted()`
`boolean` `isStarting()`
`boolean` `isStopped()`
`boolean` `isStopping()`
`void` `removeLifeCycleListener(LifeCycle.Listener listener)`
`void` `start()` Starts the component.
`void` `stop()` Stops the component.

### Method Detail

#### start

    void start()
               throws Exception

Starts the component.

Throws:
  `Exception` - If the component fails to start
See Also:
  `isStarted()`, `stop()`, `isFailed()`

#### stop

    void stop()
              throws Exception

Stops the component. The component may wait for current activities to complete normally, but it can be interrupted.

Throws:
  `Exception` - If the component fails to stop
See Also:
  `isStopped()`, `start()`, `isFailed()`

#### isRunning

    boolean isRunning()

Returns:
  true if the component is starting or has been started.

#### isStarted

    boolean isStarted()

Returns:
  true if the component has been started.
See Also:
  `start()`, `isStarting()`

#### isStarting

    boolean isStarting()

Returns:
  true if the component is starting.
See Also:
  `isStarted()`

#### isStopping

    boolean isStopping()

Returns:
  true if the component is stopping.
See Also:
  `isStopped()`

#### isStopped

    boolean isStopped()

Returns:
  true if the component has been stopped.
See Also:
  `stop()`, `isStopping()`

#### isFailed

    boolean isFailed()

Returns:
  true if the component has failed to start or has failed to stop.

#### addLifeCycleListener

    void addLifeCycleListener(LifeCycle.Listener listener)

#### removeLifeCycleListener

    void removeLifeCycleListener(LifeCycle.Listener listener)