Class StandardPipeline
addValve() or removeValve are allowed while a
 request is currently being processed. Otherwise, the mechanism by which per-thread state is maintained will need to
 be modified.- Author:
- Craig R. McClanahan
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.apache.catalina.LifecycleLifecycle.SingleUse
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected ValveThe basic Valve (if any) associated with this Pipeline.protected ContainerThe Container with which this Pipeline is associated.protected ValveThe first valve associated with this Pipeline.Fields inherited from interface org.apache.catalina.LifecycleAFTER_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
- 
Constructor SummaryConstructorsConstructorDescriptionConstruct a new StandardPipeline instance with no associated Container.StandardPipeline(Container container) Construct a new StandardPipeline instance that is associated with the specified Container.
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdd a new Valve to the end of the pipeline associated with this Container.protected voidSub-classes implement this method to perform any instance destruction required.voidfindNonAsyncValves(Set<String> result) Identifies the Valves, if any, in this Pipeline that do not support async.getBasic()Get theContainerwith which this instance is associated.getFirst()Valve[]protected voidSub-classes implement this method to perform any instance initialisation required.booleanReturns true if all the valves in this pipeline support async, false otherwisevoidremoveValve(Valve valve) Remove the specified Valve from the pipeline associated with this Container, if it is found; otherwise, do nothing.voidSet the Valve instance that has been distinguished as the basic Valve for this Pipeline (if any).voidsetContainer(Container container) Set theContainerwith which this instance is associated.protected voidSub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method.protected voidSub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method.toString()Methods inherited from class org.apache.catalina.util.LifecycleBaseaddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
- 
Field Details- 
basicThe basic Valve (if any) associated with this Pipeline.
- 
containerThe Container with which this Pipeline is associated.
- 
firstThe first valve associated with this Pipeline.
 
- 
- 
Constructor Details- 
StandardPipelinepublic StandardPipeline()Construct a new StandardPipeline instance with no associated Container.
- 
StandardPipelineConstruct a new StandardPipeline instance that is associated with the specified Container.- Parameters:
- container- The container we should be associated with
 
 
- 
- 
Method Details- 
isAsyncSupportedpublic boolean isAsyncSupported()Description copied from interface:PipelineReturns true if all the valves in this pipeline support async, false otherwise- Specified by:
- isAsyncSupportedin interface- Pipeline
- Returns:
- true if all the valves in this pipeline support async, false otherwise
 
- 
findNonAsyncValvesDescription copied from interface:PipelineIdentifies the Valves, if any, in this Pipeline that do not support async.- Specified by:
- findNonAsyncValvesin interface- Pipeline
- Parameters:
- result- The Set to which the fully qualified class names of each Valve in this Pipeline that does not support async will be added
 
- 
getContainerDescription copied from interface:ContainedGet theContainerwith which this instance is associated.- Specified by:
- getContainerin interface- Contained
- Returns:
- The Container with which this instance is associated or nullif not associated with a Container
 
- 
setContainerDescription copied from interface:ContainedSet theContainerwith which this instance is associated.- Specified by:
- setContainerin interface- Contained
- Parameters:
- container- The Container instance with which this instance is to be associated, or- nullto disassociate this instance from any Container
 
- 
initInternalprotected void initInternal()Description copied from class:LifecycleBaseSub-classes implement this method to perform any instance initialisation required.- Specified by:
- initInternalin class- LifecycleBase
 
- 
startInternalDescription copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method. Changing state will trigger theLifecycle.START_EVENTevent. If a component fails to start it may either throw aLifecycleExceptionwhich will cause it's parent to fail to start or it can place itself in the error state in which caseLifecycleBase.stop()will be called on the failed component but the parent component will continue to start normally.- Specified by:
- startInternalin class- LifecycleBase
- Throws:
- LifecycleException- Start error occurred
 
- 
stopInternalDescription copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method. Changing state will trigger theLifecycle.STOP_EVENTevent.- Specified by:
- stopInternalin class- LifecycleBase
- Throws:
- LifecycleException- Stop error occurred
 
- 
destroyInternalprotected void destroyInternal()Description copied from class:LifecycleBaseSub-classes implement this method to perform any instance destruction required.- Specified by:
- destroyInternalin class- LifecycleBase
 
- 
toString
- 
getBasic
- 
setBasicDescription copied from interface:PipelineSet the Valve instance that has been distinguished as the basic Valve for this Pipeline (if any). Prior to setting the basic Valve, the Valve's setContainer()will be called, if it implementsContained, with the owning Container as an argument. The method may throw anIllegalArgumentExceptionif this Valve chooses not to be associated with this Container, orIllegalStateExceptionif it is already associated with a different Container.
- 
addValveDescription copied from interface:PipelineAdd a new Valve to the end of the pipeline associated with this Container. Prior to adding the Valve, the Valve's setContainer()method will be called, if it implementsContained, with the owning Container as an argument. The method may throw anIllegalArgumentExceptionif this Valve chooses not to be associated with this Container, orIllegalStateExceptionif it is already associated with a different Container.Implementation note: Implementations are expected to trigger the Container.ADD_VALVE_EVENTfor the associated container if this call is successful.
- 
getValves
- 
getValveObjectNames
- 
removeValveDescription copied from interface:PipelineRemove the specified Valve from the pipeline associated with this Container, if it is found; otherwise, do nothing. If the Valve is found and removed, the Valve'ssetContainer(null)method will be called if it implementsContained.Implementation note: Implementations are expected to trigger the Container.REMOVE_VALVE_EVENTfor the associated container if this call is successful.- Specified by:
- removeValvein interface- Pipeline
- Parameters:
- valve- Valve to be removed
 
- 
getFirst
 
-