Package org.apache.camel.model
Class LoopDefinition
- All Implemented Interfaces:
org.apache.camel.CamelContextAware,org.apache.camel.LineNumberAware,Block,CopyableDefinition<ProcessorDefinition>,DisabledAwareDefinition,HasExpressionType,OutputNode,org.apache.camel.NamedNode,org.apache.camel.spi.HasCamelContext,org.apache.camel.spi.HasId,org.apache.camel.spi.IdAware
Processes a message multiple times
-
Field Summary
Fields inherited from class org.apache.camel.model.ProcessorDefinition
disabled -
Constructor Summary
ConstructorsModifierConstructorDescriptionLoopDefinition(org.apache.camel.Expression expression) LoopDefinition(ExpressionDefinition expression) protectedLoopDefinition(LoopDefinition source) LoopDefinition(org.apache.camel.Predicate predicate) -
Method Summary
Modifier and TypeMethodDescriptioncopy()Enables copy mode so a copy of the input Exchange is used for each iteration.Makes a copy of this definition.getCopy()getLabel()Returns a label to describe this node such as the expression if some kind of expression nodeorg.apache.camel.ProcessorUses theProcessorwhen preparing theExchangefor each loop iteration.onPrepare(org.apache.camel.Processor onPrepare) Uses theProcessorwhen preparing theExchangefor each loop iteration.voidsetBreakOnShutdown(String breakOnShutdown) If the breakOnShutdown attribute is true, then the loop will not iterate until it reaches the end when Camel is shut down.voidIf the copy attribute is true, a copy of the input Exchange is used for each iteration.voidsetDoWhile(String doWhile) Enables the while loop that loops until the predicate evaluates to false or null.voidsetExpression(ExpressionDefinition expression) Expression to define how many times we should loop.voidsetOnPrepare(String onPrepare) toString()Methods inherited from class org.apache.camel.model.OutputExpressionNode
getOutputs, setOutputsMethods inherited from class org.apache.camel.model.ExpressionNode
configureChild, getExpression, getExpressionType, preCreateProcessor, setExpression, setExpressionTypeMethods inherited from class org.apache.camel.model.ProcessorDefinition
addInterceptStrategy, addOutput, aggregate, aggregate, aggregate, aggregate, bean, bean, bean, bean, bean, bean, bean, bean, bean, bean, bean, choice, circuitBreaker, claimCheck, claimCheck, claimCheck, claimCheck, clearOutput, convertBodyTo, convertBodyTo, convertBodyTo, convertHeaderTo, convertHeaderTo, convertHeaderTo, convertHeaderTo, convertVariableTo, convertVariableTo, convertVariableTo, convertVariableTo, delay, delay, delay, description, disabled, disabled, disabled, doTry, dynamicRouter, dynamicRouter, end, endChoice, endCircuitBreaker, endDoCatch, endDoTry, endParent, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, filter, filter, filter, filter, getDisabled, getIndex, getInheritErrorHandler, getInterceptStrategies, getParent, getRouteConfiguration, id, idempotentConsumer, idempotentConsumer, idempotentConsumer, isAbstract, isTopLevelOnly, isWrappingEntireOutput, kamelet, loadBalance, loadBalance, log, log, log, log, log, log, log, log, loop, loop, loop, loopDoWhile, loopDoWhile, markRollbackOnly, markRollbackOnlyLast, marshal, marshal, marshal, marshal, multicast, multicast, multicast, nodePrefixId, onCompletion, onException, onException, onException, onException, pausable, pausable, pausable, pausable, pipeline, pipeline, pipeline, policy, policy, poll, poll, poll, poll, poll, poll, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollV, process, process, process, recipientList, recipientList, recipientList, recipientList, removeHeader, removeHeaders, removeHeaders, removeProperties, removeProperties, removeProperty, removeVariable, resequence, resequence, resumable, resumable, resumable, rollback, rollback, routeDescription, routeGroup, routeId, routingSlip, routingSlip, routingSlip, saga, sample, sample, sample, sample, script, script, serviceCall, serviceCall, serviceCall, setBody, setBody, setBody, setDisabled, setExchangePattern, setExchangePattern, setHeader, setHeader, setHeader, setHeaders, setInheritErrorHandler, setParent, setProperty, setProperty, setProperty, setRouteConfiguration, setVariable, setVariable, setVariable, setVariables, 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, toD, toD, toD, toD, toD, toD, toD, toD, toD, toF, tokenize, toV, transacted, transacted, transform, transform, transform, transform, unmarshal, unmarshal, unmarshal, unmarshal, unmarshal, unmarshal, unmarshal, validate, validate, validate, wireTap, wireTap, wireTap, wireTap, wireTapMethods inherited from class org.apache.camel.model.OptionalIdentifiedDefinition
getCamelContext, getCustomId, getDescription, getDescriptionText, getId, getLineNumber, getLocation, getNodePrefixId, hasCustomIdAssigned, idOrCreate, setCamelContext, setCustomId, setDescription, setGeneratedId, setId, setLineNumber, setLocationMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.camel.NamedNode
acceptDebugger
-
Constructor Details
-
LoopDefinition
public LoopDefinition() -
LoopDefinition
-
LoopDefinition
public LoopDefinition(org.apache.camel.Expression expression) -
LoopDefinition
public LoopDefinition(org.apache.camel.Predicate predicate) -
LoopDefinition
-
-
Method Details
-
copyDefinition
Description copied from interface:CopyableDefinitionMakes a copy of this definition. -
getOnPrepareProcessor
public org.apache.camel.Processor getOnPrepareProcessor() -
copy
Enables copy mode so a copy of the input Exchange is used for each iteration. -
onPrepare
Uses theProcessorwhen preparing theExchangefor each loop iteration. This can be used to deep-clone messages, or any custom logic needed before the looping executes.- Parameters:
onPrepare- reference to the processor to lookup in theRegistry- Returns:
- the builder
-
onPrepare
Uses theProcessorwhen preparing theExchangefor each loop iteration. This can be used to deep-clone messages, or any custom logic needed before the looping executes.- Parameters:
onPrepare- reference to the processor to lookup in theRegistry- Returns:
- the builder
-
getCopy
-
getDoWhile
-
setDoWhile
Enables the while loop that loops until the predicate evaluates to false or null. -
setCopy
If the copy attribute is true, a copy of the input Exchange is used for each iteration. That means each iteration will start from a copy of the same message. By default loop will loop the same exchange all over, so each iteration may have different message content. -
breakOnShutdown
-
setBreakOnShutdown
If the breakOnShutdown attribute is true, then the loop will not iterate until it reaches the end when Camel is shut down. -
getBreakOnShutdown
-
getOnPrepare
-
setOnPrepare
-
toString
-
getShortName
-
getLabel
Description copied from class:ProcessorDefinitionReturns a label to describe this node such as the expression if some kind of expression node- Specified by:
getLabelin interfaceorg.apache.camel.NamedNode- Overrides:
getLabelin classExpressionNode
-
setExpression
Expression to define how many times we should loop. Notice the expression is only evaluated once, and should return a number as how many times to loop. A value of zero or negative means no looping. The loop is like a for-loop fashion, if you want a while loop, then the dynamic router may be a better choice.- Overrides:
setExpressionin classExpressionNode
-