ParkedRetryOptions

class ParkedRetryOptions @InternalWowApi constructor(val spec: ParkedRetrySpec = ParkedRetrySpec(), val specs: Map<SubscriptionId, ParkedRetrySpec> = emptyMap(), val scanInterval: Duration = 10.seconds)

How a SubscriptionRuntime retries its parked entries over the long horizon (9.x CompensationScheduler): every scanInterval it reads its subscriptions' ledger entries and, in each partition it runs, retries those whose next retry is due (me.ahoo.wow.spi.ledger.ParkedAggregate.nextRetryAt) and runs the requests an operator left on them.

An entry's retry spec is the one an operator applied to it, else its subscription's in specs (by SubscriptionId, as wow.subscriptions.[<context>.<name>].parked.* configures it), else spec (wow.subscription.parked.*).

Fields may be added: Wow builds it from the host's configuration, so the constructor is internal to Wow.

Constructors

Link copied to clipboard
constructor(spec: ParkedRetrySpec = ParkedRetrySpec(), specs: Map<SubscriptionId, ParkedRetrySpec> = emptyMap(), scanInterval: Duration = 10.seconds)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun copyWith(spec: ParkedRetrySpec = this.spec, specs: Map<SubscriptionId, ParkedRetrySpec> = this.specs, scanInterval: Duration = this.scanInterval): ParkedRetryOptions

This ParkedRetryOptions with the given fields replaced: Wow's own copy, left out of the ABI.

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard

The retry spec entry is retried by: its own, else its subscription's.

The retry spec of subscription's entries that no operator applied one to.

Link copied to clipboard
open override fun toString(): String