@Metadata(label="eip,routing") public class ChoiceDefinition extends ProcessorDefinition<ChoiceDefinition> implements OutputNode
inheritErrorHandler, log
Constructor and Description |
---|
ChoiceDefinition() |
Modifier and Type | Method and Description |
---|---|
void |
addOutput(ProcessorDefinition<?> output)
Adds the given definition as output to this block
|
void |
configureChild(ProcessorDefinition<?> output)
Strategy for children to do any custom configuration
|
ProcessorDefinition<?> |
end()
Ends the current block
|
ChoiceDefinition |
endChoice()
Ends the current block and returns back to the
choice() DSL. |
String |
getLabel()
Returns a label to describe this node such as the expression if some kind of expression node
|
OtherwiseDefinition |
getOtherwise() |
List<ProcessorDefinition<?>> |
getOutputs() |
String |
getShortName() |
List<WhenDefinition> |
getWhenClauses() |
ChoiceDefinition |
otherwise()
Sets the otherwise node
|
void |
setId(String id)
Sets the id of this node
|
void |
setOtherwise(OtherwiseDefinition otherwise) |
void |
setWhenClauses(List<WhenDefinition> whenClauses)
Sets the when clauses
|
String |
toString() |
ExpressionClause<ChoiceDefinition> |
when()
Creates an expression for the when node
|
ChoiceDefinition |
when(org.apache.camel.Predicate predicate)
Sets the predicate for the when node
|
addInterceptStrategy, aggregate, aggregate, aggregate, aggregate, bean, bean, bean, bean, bean, bean, bean, bean, bean, bean, bean, choice, circuitBreaker, claimCheck, claimCheck, claimCheck, claimCheck, clearOutput, convertBodyTo, convertBodyTo, delay, delay, delay, doTry, dynamicRouter, dynamicRouter, endCircuitBreaker, endDoTry, endParent, endRest, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, filter, filter, filter, filter, getIndex, getInterceptStrategies, getParent, id, idempotentConsumer, idempotentConsumer, idempotentConsumer, inheritErrorHandler, inOnly, inOnly, inOnly, inOnly, inOnly, inOut, inOut, inOut, inOut, inOut, isAbstract, isInheritErrorHandler, isTopLevelOnly, isWrappingEntireOutput, kamelet, loadBalance, loadBalance, log, log, log, log, log, log, loop, loop, loop, loopDoWhile, loopDoWhile, markRollbackOnly, markRollbackOnlyLast, marshal, marshal, marshal, marshal, multicast, multicast, multicast, onCompletion, onException, onException, pipeline, pipeline, pipeline, pipeline, policy, policy, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, preCreateProcessor, process, process, process, recipientList, recipientList, recipientList, recipientList, removeHeader, removeHeaders, removeHeaders, removeProperties, removeProperties, removeProperty, resequence, resequence, rollback, rollback, routeDescription, routeGroup, routeId, routingSlip, routingSlip, routingSlip, saga, sample, sample, sample, sample, script, script, serviceCall, serviceCall, serviceCall, setBody, setBody, setBody, setExchangePattern, setHeader, setHeader, setHeader, setInheritErrorHandler, setParent, setProperty, setProperty, setProperty, sort, sort, sort, split, split, split, split, startupOrder, step, step, stop, threads, threads, threads, threads, throttle, throttle, throttle, throttle, throttle, throwException, throwException, to, to, to, to, to, to, to, to, to, to, to, to, to, to, toD, toD, toD, toD, toD, toD, toD, toF, transacted, transacted, transform, transform, unmarshal, unmarshal, unmarshal, unmarshal, validate, validate, validate, wireTap, wireTap, wireTap
description, description, getCustomId, getDescription, getDescriptionText, getId, hasCustomIdAssigned, idOrCreate, setCustomId, setDescription, setGeneratedId
public List<ProcessorDefinition<?>> getOutputs()
getOutputs
in class ProcessorDefinition<ChoiceDefinition>
public void addOutput(ProcessorDefinition<?> output)
Block
addOutput
in interface Block
addOutput
in class ProcessorDefinition<ChoiceDefinition>
output
- the processor definitionpublic ProcessorDefinition<?> end()
ProcessorDefinition
end
in class ProcessorDefinition<ChoiceDefinition>
public ChoiceDefinition endChoice()
ProcessorDefinition
choice()
DSL.
Important: If you want to end the entire choice block, then use ProcessorDefinition.end()
instead. The purpose of
ProcessorDefinition.endChoice()
is to return control back to the choice()
DSL, so you can
add subsequent when and otherwise to the choice. There can be situations where you would need
to use ProcessorDefinition.endChoice()
often when you add additional EIPs inside the when's, and the DSL
ProcessorDefinition.end()
, and you would need to use this ProcessorDefinition.endChoice()
to
return back the scope to the choice()
DSL.
For more details and examples see also this FAQ:
Why can I not
use when or otherwise in a Java Camel route .endChoice
in class ProcessorDefinition<ChoiceDefinition>
public ChoiceDefinition when(@AsPredicate org.apache.camel.Predicate predicate)
predicate
- the predicate@AsPredicate public ExpressionClause<ChoiceDefinition> when()
public ChoiceDefinition otherwise()
public void setId(String id)
OptionalIdentifiedDefinition
setId
in interface org.apache.camel.spi.IdAware
setId
in class OptionalIdentifiedDefinition<ChoiceDefinition>
public String getShortName()
getShortName
in interface org.apache.camel.NamedNode
public String getLabel()
ProcessorDefinition
getLabel
in interface org.apache.camel.NamedNode
getLabel
in class ProcessorDefinition<ChoiceDefinition>
public List<WhenDefinition> getWhenClauses()
public void setWhenClauses(List<WhenDefinition> whenClauses)
public OtherwiseDefinition getOtherwise()
public void setOtherwise(OtherwiseDefinition otherwise)
public void configureChild(ProcessorDefinition<?> output)
ProcessorDefinition
configureChild
in class ProcessorDefinition<ChoiceDefinition>
output
- the child to be added as output to thisApache Camel