Package-level declarations

Types

Link copied to clipboard

Utilities for acknowledging message exchanges.

Link copied to clipboard
fun interface ExchangeFilter<T : MessageExchange<*, *>> : Filter<T>

A filter for processing message exchanges in a filter chain.

Link copied to clipboard
Link copied to clipboard
class RetryableFilter<T : MessageExchange<*, *>>(retrySpec: Retry = DEFAULT_RETRY_SPEC) : ExchangeFilter<T>

Filter that retries message processing for recoverable errors.

Properties

Link copied to clipboard
Link copied to clipboard
val DEFAULT_RETRY_SPEC: RetryBackoffSpec

Default retry specification for recoverable errors.

Link copied to clipboard
const val ERROR_KEY: String
Link copied to clipboard
const val FUNCTION_KEY: String
Link copied to clipboard

Functions

Link copied to clipboard

Who withheld the acknowledgement of this exchange (withholdAcknowledgement), or null.

Link copied to clipboard
Link copied to clipboard
fun MessageExchange<*, *>.withholdAcknowledgement(withheldBy: String = getFunction()?.let { "${it.processorName}.${it.name}" } ?: "unknown")

Leaves this exchange unacknowledged when its processing ends, so a bus that redelivers unacknowledged messages delivers it again. For a processing failure that was neither handled nor durably recorded, for example when recording an event-processing failure for compensation fails.