InMemoryPostbox

class InMemoryPostbox(val timeSource: TimeSource) : Postbox

Constructors

Link copied to clipboard
constructor(timeSource: TimeSource)

Properties

Link copied to clipboard
val timeSource: TimeSource

Functions

Link copied to clipboard
fun failNext()
Link copied to clipboard
open override fun markDead(requestId: RequestId, response: Response?): Result<Unit, PostboxError>

Mark a request as permanently failed (dead) with an optional response.

Link copied to clipboard
open override fun markFailed(requestId: RequestId, delayReprocessing: Duration, response: Response?): Result<Unit, PostboxError>

Mark a request as failed with the given delay for reprocessing and an optional response.

Link copied to clipboard
open override fun markProcessed(requestId: RequestId, response: Response): Result<Unit, PostboxError>

Mark a request as processed with the given response.

Link copied to clipboard
open override fun pendingRequests(batchSize: Int, atTime: Instant): List<Postbox.PendingRequest>

Retrieve all pending requests. Those are the ones that have not been marked as processed or dead yet.

Link copied to clipboard

Retrieve the status of a request.

Link copied to clipboard
open override fun store(requestId: RequestId, request: Request): Result<RequestProcessingStatus, PostboxError>

Store a request in the Postbox for later processing.