org.glassfish.jersey.process.internal
Interface ChainableStage<DATA>

Type Parameters:
DATA - processed data type.
All Superinterfaces:
Stage<DATA>
All Known Implementing Classes:
AbstractChainableStage

public interface ChainableStage<DATA>
extends Stage<DATA>

Linear acceptor that can be composed into a chain. The acceptor exposes a method for setting a value of the next acceptor in the chain that should be returned from the chain by default.

The typical use case for implementing the acceptor is a logic that usually needs to perform some logic, but unlike an acceptor created from a function it also needs to be able to decide to override the default next acceptor and return a different acceptor, effectively branching away from the original linear acceptor chain. This technique can be e.g. used to break the accepting chain by returning a custom inflecting acceptor, etc.

Author:
Marek Potociar (marek.potociar at oracle.com)

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.glassfish.jersey.process.internal.Stage
Stage.Builder<DATA>, Stage.Continuation<DATA>
 
Method Summary
 void setDefaultNext(Stage<DATA> next)
          Set the default next stage that should be returned from this stage after it has been invoked by default.
 
Methods inherited from interface org.glassfish.jersey.process.internal.Stage
apply
 

Method Detail

setDefaultNext

void setDefaultNext(Stage<DATA> next)
Set the default next stage that should be returned from this stage after it has been invoked by default.

Parameters:
next - the next default stage in the chain.


Copyright © 2007-2013 Oracle Corporation. All Rights Reserved. Use is subject to license terms.