Interface FailurePolicy
- All Superinterfaces:
Prototype.Api
Portable incoming delivery failure policy.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classFluent API builder forFailurePolicy.static classFailurePolicy.BuilderBase<BUILDER extends FailurePolicy.BuilderBase<BUILDER, PROTOTYPE>, PROTOTYPE extends FailurePolicy>Fluent API builder base forFailurePolicy. -
Method Summary
Modifier and TypeMethodDescriptionstatic FailurePolicy.Builderbuilder()Create a new fluent API builder to customize configuration.static FailurePolicy.Builderbuilder(FailurePolicy instance) Create a new fluent API builder from an existing instance.static FailurePolicycreate()Create a new instance with default values.static FailurePolicyCreate a new instance from configuration.Dead-letter delivery configuration; required forFailureDisposition.DEAD_LETTERand invalid for other dispositions.Terminal disposition after delivery attempts are exhausted; dead letter requires a target channel.retry()Fault tolerance retry instance used for incoming delivery.
-
Method Details
-
builder
Create a new fluent API builder to customize configuration.- Returns:
- a new builder
-
builder
Create a new fluent API builder from an existing instance.- Parameters:
instance- an existing instance used as a base for the builder- Returns:
- a builder based on an instance
-
create
Create a new instance from configuration.- Parameters:
config- used to configure the new instance- Returns:
- a new instance configured from configuration
-
create
-
retry
Retry retry()Fault tolerance retry instance used for incoming delivery. When no retry is supplied, all default policies share one messaging retry instance withInteger.MAX_VALUEcalls, a one-second initial delay, factor-two exponential backoff, no jitter, a one-minute maximum delay, a practically unbounded timeout, and disabled instance metrics.An explicitly configured or programmatically supplied retry is complete and is used as supplied. Options omitted within an explicit retry use fault-tolerance defaults, without inheriting messaging defaults.
- Returns:
- retry instance
-
onExhausted
FailureDisposition onExhausted()Terminal disposition after delivery attempts are exhausted; dead letter requires a target channel. A pre-dispatch mapping failure reported throughConnectorDeliveryReservation.startFailed(MessageBatch, RuntimeException)orConnectorDeliveryReservation.tryStartFailed(MessageBatch, RuntimeException)is always treated as exhausted after its initial attempt because the runtime cannot repeat transport mapping.- Returns:
- terminal disposition
-
deadLetter
Optional<DeadLetterConfig> deadLetter()Dead-letter delivery configuration; required forFailureDisposition.DEAD_LETTERand invalid for other dispositions.Runtime validation covers the logical channel graph. It cannot detect when distinct connector bindings resolve to the same transport destination, such as two Kafka channels configured with the same topic. A dead-letter target must not resolve back to the source connector.
- Returns:
- dead-letter configuration
-