Package-level declarations

Types

Link copied to clipboard
data class DeduplicationRecord(val messageId: SQSMessageId, val sequenceNumber: String?, val sentAt: Instant)

The checksums are not recorded here, because SQS digests the request it has just received even when it deduplicates that request away.

Link copied to clipboard
class FakeSQS(queues: Storage<List<SQSMessage>> = Storage.InMemory(), awsAccount: AwsAccount = AwsAccount.of("1234567890"), region: Region = Region.of("ldn-north-1"), deduplication: Storage<DeduplicationRecord> = Storage.InMemory(), queueConfig: Storage<QueueConfig> = Storage.InMemory(), clock: Clock = Clock.systemUTC()) : ChaoticHttpHandler
Link copied to clipboard

From the AWS SDK

Link copied to clipboard
data class QueueConfig(val contentBasedDeduplication: Boolean = false)

The queue settings the fake honours. Recorded by CreateQueue, dropped by DeleteQueue.

Properties

Link copied to clipboard

Functions

Link copied to clipboard

Received messages stay visible in the fake, so there is no timeout to change: only the queue is checked.

Link copied to clipboard
Link copied to clipboard
fun AwsRestJsonFake.deleteQueue(queues: Storage<List<SQSMessage>>, deduplication: Storage<DeduplicationRecord> = Storage.InMemory(), queueConfig: Storage<QueueConfig> = Storage.InMemory()): RoutingHttpHandler
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun main()
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Null when the map is empty, because SQS omits the field rather than sending an empty digest.

Link copied to clipboard
fun AwsRestJsonFake.sendMessage(queues: Storage<List<SQSMessage>>, deduplication: Storage<DeduplicationRecord> = Storage.InMemory(), queueConfig: Storage<QueueConfig> = Storage.InMemory(), clock: Clock = Clock.systemUTC(), sequenceNumbers: AtomicLong = AtomicLong()): RoutingHttpHandler
Link copied to clipboard
fun AwsRestJsonFake.sendMessageBatch(queues: Storage<List<SQSMessage>>, deduplication: Storage<DeduplicationRecord> = Storage.InMemory(), queueConfig: Storage<QueueConfig> = Storage.InMemory(), clock: Clock = Clock.systemUTC(), sequenceNumbers: AtomicLong = AtomicLong()): RoutingHttpHandler