@kensio/yulin 0.43.0 → 0.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +11 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +19 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws.d.ts +3 -0
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +4 -0
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.d.ts +28 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.js +33 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +2 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.d.ts +28 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.js +40 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +3 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +3 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.js +4 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.d.ts.map +1 -1
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js.map +1 -1
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts +26 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js +33 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts +28 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +38 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.d.ts +17 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +71 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts +4 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js +12 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts +5 -6
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js +7 -13
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +1 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +8 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +25 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +55 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +64 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts +17 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js +47 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts +53 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +77 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.d.ts +41 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.js +51 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.d.ts +91 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.js +8 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts +60 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js +89 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js.map +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -1
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.d.ts +27 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.js +32 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.d.ts +40 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.js +55 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.d.ts +85 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.js +136 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.d.ts +49 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.js +97 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.d.ts +56 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.js +55 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.d.ts +49 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.js +2 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.d.ts +118 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.js +49 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +32 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +52 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.d.ts +29 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.js +49 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.d.ts +57 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.js +89 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.d.ts +46 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.js +57 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +101 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +93 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts +37 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.js +44 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.d.ts +23 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-name.d.ts +10 -0
- package/dist/service/lambda/function/sim-lambda-function-name.d.ts.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-name.js +18 -0
- package/dist/service/lambda/function/sim-lambda-function-name.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts +4 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts.map +1 -1
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js +6 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js.map +1 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +16 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
- package/dist/service/lambda/sim-lambda-commands.d.ts +51 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -0
- package/dist/service/lambda/sim-lambda-commands.js +84 -0
- package/dist/service/lambda/sim-lambda-commands.js.map +1 -0
- package/dist/service/lambda/sim-lambda.d.ts +35 -39
- package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda.js +47 -65
- package/dist/service/lambda/sim-lambda.js.map +1 -1
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts +25 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js +33 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.d.ts +45 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.js +67 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +44 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +72 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +47 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +122 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js.map +1 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts +24 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts.map +1 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +29 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js.map +1 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts +41 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts.map +1 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js +51 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js.map +1 -0
- package/dist/service/sqs/command/message/consume.command.d.ts +61 -0
- package/dist/service/sqs/command/message/consume.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/consume.command.js +2 -0
- package/dist/service/sqs/command/message/consume.command.js.map +1 -0
- package/dist/service/sqs/command/message/receive.command.d.ts +40 -0
- package/dist/service/sqs/command/message/receive.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/receive.command.js +2 -0
- package/dist/service/sqs/command/message/receive.command.js.map +1 -0
- package/dist/service/sqs/command/message/send.command.d.ts +80 -0
- package/dist/service/sqs/command/message/send.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/send.command.js +2 -0
- package/dist/service/sqs/command/message/send.command.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.d.ts +39 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.js +67 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.d.ts +31 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.js +51 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.d.ts +38 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.js +58 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.d.ts +28 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.js +36 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.d.ts +27 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.js +70 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.d.ts +32 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.js +33 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.d.ts +33 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.js +55 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.d.ts +25 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.js +38 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.d.ts +32 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.js +56 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.d.ts +18 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.js +37 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.js.map +1 -0
- package/dist/service/sqs/command/queue/queue.command.d.ts +114 -0
- package/dist/service/sqs/command/queue/queue.command.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/queue.command.js +2 -0
- package/dist/service/sqs/command/queue/queue.command.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.d.ts +51 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.js +70 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.d.ts +63 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.js +98 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.d.ts +45 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.js +74 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.d.ts +47 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.js +55 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.d.ts +27 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.js +54 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.d.ts +18 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.js +27 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.js.map +1 -0
- package/dist/service/sqs/command/sim-sqs-command.types.d.ts +8 -0
- package/dist/service/sqs/command/sim-sqs-command.types.d.ts.map +1 -0
- package/dist/service/sqs/command/sim-sqs-command.types.js +2 -0
- package/dist/service/sqs/command/sim-sqs-command.types.js.map +1 -0
- package/dist/service/sqs/error/sim-sqs.error.d.ts +162 -0
- package/dist/service/sqs/error/sim-sqs.error.d.ts.map +1 -0
- package/dist/service/sqs/error/sim-sqs.error.js +191 -0
- package/dist/service/sqs/error/sim-sqs.error.js.map +1 -0
- package/dist/service/sqs/index.d.ts +14 -0
- package/dist/service/sqs/index.d.ts.map +1 -0
- package/dist/service/sqs/index.js +13 -0
- package/dist/service/sqs/index.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.d.ts +56 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.js +42 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.d.ts +23 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.js +68 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.d.ts +17 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.js +2 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.d.ts +29 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.js +56 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.d.ts +44 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.js +93 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-body.d.ts +18 -0
- package/dist/service/sqs/message/sim-sqs-message-body.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-body.js +66 -0
- package/dist/service/sqs/message/sim-sqs-message-body.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-store.d.ts +74 -0
- package/dist/service/sqs/message/sim-sqs-message-store.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-store.js +99 -0
- package/dist/service/sqs/message/sim-sqs-message-store.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.d.ts +28 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.js +75 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.d.ts +56 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.js +79 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.d.ts +41 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.js +56 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message.d.ts +96 -0
- package/dist/service/sqs/message/sim-sqs-message.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message.js +136 -0
- package/dist/service/sqs/message/sim-sqs-message.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.d.ts +10 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.js +14 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.d.ts +51 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.js +62 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.d.ts +20 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.js +42 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.d.ts +65 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.js +57 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts +41 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js +47 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.d.ts +27 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.js +83 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.d.ts +34 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.js +93 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.d.ts +20 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.js +37 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.d.ts +60 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.js +96 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.d.ts +21 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.js +47 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.d.ts +22 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.js +29 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.d.ts +60 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.js +87 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.d.ts +24 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.js +36 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue.d.ts +130 -0
- package/dist/service/sqs/queue/sim-sqs-queue.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue.js +188 -0
- package/dist/service/sqs/queue/sim-sqs-queue.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.d.ts +30 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.js +118 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.js.map +1 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.d.ts +18 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.d.ts.map +1 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.js +76 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.js.map +1 -0
- package/dist/service/sqs/sim-sqs.d.ts +119 -0
- package/dist/service/sqs/sim-sqs.d.ts.map +1 -0
- package/dist/service/sqs/sim-sqs.js +213 -0
- package/dist/service/sqs/sim-sqs.js.map +1 -0
- package/package.json +6 -1
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
3
|
+
import type { SimSqsQueueAccess } from "../queue/sim-sqs-queue-access.js";
|
|
4
|
+
import type { SimChangeMessageVisibilityCommand, SimChangeMessageVisibilityCommandOutput } from "./consume.command.js";
|
|
5
|
+
interface SimSqsChangeMessageVisibilityProperties {
|
|
6
|
+
readonly access: SimSqsQueueAccess;
|
|
7
|
+
readonly clock: BackgroundScheduler;
|
|
8
|
+
}
|
|
9
|
+
interface SimSqsChangeMessageVisibilityOptions {
|
|
10
|
+
readonly caller?: SimAwsCaller;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The ChangeMessageVisibility command.
|
|
14
|
+
*
|
|
15
|
+
* The new timeout runs from now rather than from when the message was received,
|
|
16
|
+
* as it does on real SQS, so a consumer part way through a slow handler asks for
|
|
17
|
+
* the time it still needs. A timeout of zero gives the message straight back to
|
|
18
|
+
* the queue.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SimSqsChangeMessageVisibility {
|
|
21
|
+
private readonly access;
|
|
22
|
+
private readonly clock;
|
|
23
|
+
private readonly handles;
|
|
24
|
+
constructor(properties: SimSqsChangeMessageVisibilityProperties);
|
|
25
|
+
/**
|
|
26
|
+
* Change how much longer a received message stays hidden.
|
|
27
|
+
*/
|
|
28
|
+
handle(command: SimChangeMessageVisibilityCommand, options?: SimSqsChangeMessageVisibilityOptions): SimChangeMessageVisibilityCommandOutput;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=sim-sqs-change-message-visibility.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-change-message-visibility.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-change-message-visibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAK1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,KAAK,EACV,iCAAiC,EACjC,uCAAuC,EACxC,MAAM,sBAAsB,CAAC;AAI9B,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAED,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAE/C,YAAY,UAAU,EAAE,uCAAuC,EAI9D;IAED;;OAEG;IACH,MAAM,CACJ,OAAO,EAAE,iCAAiC,EAC1C,OAAO,CAAC,EAAE,oCAAoC,GAC7C,uCAAuC,CAuBzC;CACF"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { SimSqsInvalidParameterValue, SimSqsMessageNotInflight, } from "../../error/sim-sqs.error.js";
|
|
2
|
+
import { SimSqsMessageHandles } from "./sim-sqs-message-handles.js";
|
|
3
|
+
const maximumVisibilityTimeoutSeconds = 43_200;
|
|
4
|
+
/**
|
|
5
|
+
* The ChangeMessageVisibility command.
|
|
6
|
+
*
|
|
7
|
+
* The new timeout runs from now rather than from when the message was received,
|
|
8
|
+
* as it does on real SQS, so a consumer part way through a slow handler asks for
|
|
9
|
+
* the time it still needs. A timeout of zero gives the message straight back to
|
|
10
|
+
* the queue.
|
|
11
|
+
*/
|
|
12
|
+
export class SimSqsChangeMessageVisibility {
|
|
13
|
+
access;
|
|
14
|
+
clock;
|
|
15
|
+
handles;
|
|
16
|
+
constructor(properties) {
|
|
17
|
+
this.access = properties.access;
|
|
18
|
+
this.clock = properties.clock;
|
|
19
|
+
this.handles = new SimSqsMessageHandles({ clock: properties.clock });
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Change how much longer a received message stays hidden.
|
|
23
|
+
*/
|
|
24
|
+
handle(command, options) {
|
|
25
|
+
const queue = this.access.requireByUrl("sqs:ChangeMessageVisibility", command.input.QueueUrl, options?.caller);
|
|
26
|
+
const timeout = visibilityTimeout(command.input.VisibilityTimeout);
|
|
27
|
+
const changedAt = this.clock.now();
|
|
28
|
+
const message = this.handles.message(queue, SimSqsMessageHandles.required(command.input.ReceiptHandle));
|
|
29
|
+
if (!message.isInFlightAt(changedAt)) {
|
|
30
|
+
throw new SimSqsMessageNotInflight("The message referred to isn't in flight: its visibility timeout has " +
|
|
31
|
+
"already lapsed, so there is none left to change");
|
|
32
|
+
}
|
|
33
|
+
queue.hideMessage(message, changedAt, timeout);
|
|
34
|
+
return { $metadata: {} };
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* How long a message is hidden for by a visibility change.
|
|
39
|
+
*/
|
|
40
|
+
function visibilityTimeout(requested) {
|
|
41
|
+
if (requested === undefined ||
|
|
42
|
+
!Number.isSafeInteger(requested) ||
|
|
43
|
+
requested < 0 ||
|
|
44
|
+
requested > maximumVisibilityTimeoutSeconds) {
|
|
45
|
+
throw new SimSqsInvalidParameterValue(`Value ${String(requested)} for parameter VisibilityTimeout is ` +
|
|
46
|
+
`invalid. Reason: Must be an integer from 0 to ` +
|
|
47
|
+
`${String(maximumVisibilityTimeoutSeconds)}.`);
|
|
48
|
+
}
|
|
49
|
+
return requested;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=sim-sqs-change-message-visibility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-change-message-visibility.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-change-message-visibility.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAMpE,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAW/C;;;;;;;GAOG;AACH,MAAM,OAAO,6BAA6B;IACvB,MAAM,CAAoB;IAC1B,KAAK,CAAsB;IAC3B,OAAO,CAAuB;IAE/C,YAAY,UAAmD;QAC7D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,MAAM,CACJ,OAA0C,EAC1C,OAA8C;QAE9C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,6BAA6B,EAC7B,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAClC,KAAK,EACL,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAC3D,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,wBAAwB,CAChC,sEAAsE;gBACpE,iDAAiD,CACpD,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAE/C,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;CACF;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,SAA6B;IACtD,IACE,SAAS,KAAK,SAAS;QACvB,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;QAChC,SAAS,GAAG,CAAC;QACb,SAAS,GAAG,+BAA+B,EAC3C,CAAC;QACD,MAAM,IAAI,2BAA2B,CACnC,SAAS,MAAM,CAAC,SAAS,CAAC,sCAAsC;YAC9D,gDAAgD;YAChD,GAAG,MAAM,CAAC,+BAA+B,CAAC,GAAG,CAChD,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
3
|
+
import type { SimSqsQueueAccess } from "../queue/sim-sqs-queue-access.js";
|
|
4
|
+
import type { SimDeleteMessageBatchCommand, SimDeleteMessageBatchCommandOutput, SimDeleteMessageCommand, SimDeleteMessageCommandOutput } from "./consume.command.js";
|
|
5
|
+
interface SimSqsDeleteMessageCommandsProperties {
|
|
6
|
+
readonly access: SimSqsQueueAccess;
|
|
7
|
+
readonly clock: BackgroundScheduler;
|
|
8
|
+
}
|
|
9
|
+
interface SimSqsDeleteMessageCommandsOptions {
|
|
10
|
+
readonly caller?: SimAwsCaller;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The commands a consumer finishes a message with.
|
|
14
|
+
*/
|
|
15
|
+
export declare class SimSqsDeleteMessageCommands {
|
|
16
|
+
private readonly access;
|
|
17
|
+
private readonly handles;
|
|
18
|
+
constructor(properties: SimSqsDeleteMessageCommandsProperties);
|
|
19
|
+
/**
|
|
20
|
+
* Delete one message by the receipt handle it was received with.
|
|
21
|
+
*/
|
|
22
|
+
deleteMessage(command: SimDeleteMessageCommand, options?: SimSqsDeleteMessageCommandsOptions): SimDeleteMessageCommandOutput;
|
|
23
|
+
/**
|
|
24
|
+
* Delete up to ten messages at once.
|
|
25
|
+
*/
|
|
26
|
+
deleteMessageBatch(command: SimDeleteMessageBatchCommand, options?: SimSqsDeleteMessageCommandsOptions): SimDeleteMessageBatchCommandOutput;
|
|
27
|
+
/**
|
|
28
|
+
* Delete the message a receipt handle names.
|
|
29
|
+
*
|
|
30
|
+
* A handle from an earlier receive is accepted and deletes nothing, which is
|
|
31
|
+
* what real SQS does with one: the receive it belongs to has been superseded,
|
|
32
|
+
* so the message another consumer now holds is left where it is. That is the
|
|
33
|
+
* failure a consumer slower than the visibility timeout actually hits.
|
|
34
|
+
*/
|
|
35
|
+
private delete;
|
|
36
|
+
}
|
|
37
|
+
export {};
|
|
38
|
+
//# sourceMappingURL=sim-sqs-delete-message-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-delete-message-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-delete-message-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,OAAO,KAAK,EACV,4BAA4B,EAC5B,kCAAkC,EAClC,uBAAuB,EACvB,6BAA6B,EAG9B,MAAM,sBAAsB,CAAC;AAQ9B,UAAU,qCAAqC;IAC7C,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAED,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAE/C,YAAY,UAAU,EAAE,qCAAqC,EAG5D;IAED;;OAEG;IACH,aAAa,CACX,OAAO,EAAE,uBAAuB,EAChC,OAAO,CAAC,EAAE,kCAAkC,GAC3C,6BAA6B,CAU/B;IAED;;OAEG;IACH,kBAAkB,CAChB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,kCAAkC,GAC3C,kCAAkC,CAyBpC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM;CAQf"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { requireBatchEntries, runBatch } from "./sim-sqs-batch-entries.js";
|
|
2
|
+
import { SimSqsMessageHandles } from "./sim-sqs-message-handles.js";
|
|
3
|
+
/**
|
|
4
|
+
* Real SQS authorizes a batch delete as `sqs:DeleteMessage`. There is no
|
|
5
|
+
* `sqs:DeleteMessageBatch` action, so a policy naming one grants nothing.
|
|
6
|
+
*/
|
|
7
|
+
const messageDeletionAction = "sqs:DeleteMessage";
|
|
8
|
+
/**
|
|
9
|
+
* The commands a consumer finishes a message with.
|
|
10
|
+
*/
|
|
11
|
+
export class SimSqsDeleteMessageCommands {
|
|
12
|
+
access;
|
|
13
|
+
handles;
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
this.access = properties.access;
|
|
16
|
+
this.handles = new SimSqsMessageHandles({ clock: properties.clock });
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Delete one message by the receipt handle it was received with.
|
|
20
|
+
*/
|
|
21
|
+
deleteMessage(command, options) {
|
|
22
|
+
const queue = this.access.requireByUrl(messageDeletionAction, command.input.QueueUrl, options?.caller);
|
|
23
|
+
this.delete(queue, command.input.ReceiptHandle);
|
|
24
|
+
return { $metadata: {} };
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Delete up to ten messages at once.
|
|
28
|
+
*/
|
|
29
|
+
deleteMessageBatch(command, options) {
|
|
30
|
+
const queue = this.access.requireByUrl(messageDeletionAction, command.input.QueueUrl, options?.caller);
|
|
31
|
+
const entries = requireBatchEntries(command.input.Entries, "DeleteMessage");
|
|
32
|
+
const outcome = runBatch(entries, (entry, id) => {
|
|
33
|
+
this.delete(queue, entry.ReceiptHandle);
|
|
34
|
+
return { Id: id };
|
|
35
|
+
});
|
|
36
|
+
return {
|
|
37
|
+
$metadata: {},
|
|
38
|
+
Successful: outcome.successful,
|
|
39
|
+
Failed: outcome.failed,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Delete the message a receipt handle names.
|
|
44
|
+
*
|
|
45
|
+
* A handle from an earlier receive is accepted and deletes nothing, which is
|
|
46
|
+
* what real SQS does with one: the receive it belongs to has been superseded,
|
|
47
|
+
* so the message another consumer now holds is left where it is. That is the
|
|
48
|
+
* failure a consumer slower than the visibility timeout actually hits.
|
|
49
|
+
*/
|
|
50
|
+
delete(queue, requested) {
|
|
51
|
+
const receiptHandle = SimSqsMessageHandles.required(requested);
|
|
52
|
+
const message = this.handles.message(queue, receiptHandle);
|
|
53
|
+
if (message.holdsReceiptHandle(receiptHandle)) {
|
|
54
|
+
queue.removeMessage(message);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=sim-sqs-delete-message-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-delete-message-commands.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-delete-message-commands.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAUpE;;;GAGG;AACH,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAWlD;;GAEG;AACH,MAAM,OAAO,2BAA2B;IACrB,MAAM,CAAoB;IAC1B,OAAO,CAAuB;IAE/C,YAAY,UAAiD;QAC3D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,aAAa,CACX,OAAgC,EAChC,OAA4C;QAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,qBAAqB,EACrB,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EAAE,MAAM,CAChB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEhD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,kBAAkB,CAChB,OAAqC,EACrC,OAA4C;QAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,qBAAqB,EACrB,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAE5E,MAAM,OAAO,GAAG,QAAQ,CACtB,OAAO,EACP,CACE,KAAoC,EACpC,EAAE,EACmC,EAAE;YACvC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YAExC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACpB,CAAC,CACF,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,EAAE;YACb,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,MAAM,CAAC,KAAkB,EAAE,SAA6B;QAC9D,MAAM,aAAa,GAAG,oBAAoB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAE3D,IAAI,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../../util/background/background.js";
|
|
2
|
+
import type { SimSqsMessage } from "../../message/sim-sqs-message.js";
|
|
3
|
+
import type { SimSqsQueue } from "../../queue/sim-sqs-queue.js";
|
|
4
|
+
interface SimSqsMessageHandlesProperties {
|
|
5
|
+
readonly clock: BackgroundScheduler;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* How a request reaches the message a receipt handle names.
|
|
9
|
+
*
|
|
10
|
+
* Deleting a message and changing its visibility both start here, and both have
|
|
11
|
+
* to tell three cases apart: a handle the queue never issued, a handle it did
|
|
12
|
+
* issue for a message that has since been received again, and the handle from the
|
|
13
|
+
* most recent receive. Only the first is a failure.
|
|
14
|
+
*/
|
|
15
|
+
export declare class SimSqsMessageHandles {
|
|
16
|
+
private readonly clock;
|
|
17
|
+
constructor(properties: SimSqsMessageHandlesProperties);
|
|
18
|
+
/**
|
|
19
|
+
* The receipt handle a request has to carry.
|
|
20
|
+
*/
|
|
21
|
+
static required(receiptHandle: string | undefined): string;
|
|
22
|
+
/**
|
|
23
|
+
* The message a receipt handle names, refusing a handle the queue never issued.
|
|
24
|
+
*/
|
|
25
|
+
message(queue: SimSqsQueue, receiptHandle: string): SimSqsMessage;
|
|
26
|
+
}
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=sim-sqs-message-handles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-message-handles.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-message-handles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAKrF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE,UAAU,8BAA8B;IACtC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAE5C,YAAY,UAAU,EAAE,8BAA8B,EAErD;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQzD;IAED;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,GAAG,aAAa,CAWhE;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { SimSqsReceiptHandleIsInvalid, SimSqsValidationException, } from "../../error/sim-sqs.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* How a request reaches the message a receipt handle names.
|
|
4
|
+
*
|
|
5
|
+
* Deleting a message and changing its visibility both start here, and both have
|
|
6
|
+
* to tell three cases apart: a handle the queue never issued, a handle it did
|
|
7
|
+
* issue for a message that has since been received again, and the handle from the
|
|
8
|
+
* most recent receive. Only the first is a failure.
|
|
9
|
+
*/
|
|
10
|
+
export class SimSqsMessageHandles {
|
|
11
|
+
clock;
|
|
12
|
+
constructor(properties) {
|
|
13
|
+
this.clock = properties.clock;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The receipt handle a request has to carry.
|
|
17
|
+
*/
|
|
18
|
+
static required(receiptHandle) {
|
|
19
|
+
if (receiptHandle === undefined || receiptHandle === "") {
|
|
20
|
+
throw new SimSqsValidationException("The request must contain the parameter ReceiptHandle");
|
|
21
|
+
}
|
|
22
|
+
return receiptHandle;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The message a receipt handle names, refusing a handle the queue never issued.
|
|
26
|
+
*/
|
|
27
|
+
message(queue, receiptHandle) {
|
|
28
|
+
const message = queue.messageForHandle(receiptHandle, this.clock.now());
|
|
29
|
+
if (message === undefined) {
|
|
30
|
+
throw new SimSqsReceiptHandleIsInvalid(`The receipt handle '${receiptHandle}' is not a receipt handle this ` +
|
|
31
|
+
`queue issued`);
|
|
32
|
+
}
|
|
33
|
+
return message;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=sim-sqs-message-handles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-message-handles.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-message-handles.ts"],"names":[],"mappings":"AACA,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AAQtC;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAoB;IACd,KAAK,CAAsB;IAE5C,YAAY,UAA0C;QACpD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,aAAiC;QAC/C,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;YACxD,MAAM,IAAI,yBAAyB,CACjC,sDAAsD,CACvD,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,KAAkB,EAAE,aAAqB;QAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAExE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAA4B,CACpC,uBAAuB,aAAa,iCAAiC;gBACnE,cAAc,CACjB,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { SimSqsQueue } from "../../queue/sim-sqs-queue.js";
|
|
2
|
+
import type { SimReceiveMessageCommandInput } from "./receive.command.js";
|
|
3
|
+
/**
|
|
4
|
+
* How many messages a request may be answered with.
|
|
5
|
+
*/
|
|
6
|
+
export declare function requestedMessageCount(requested: number | undefined): number;
|
|
7
|
+
/**
|
|
8
|
+
* How long the messages this request hands out stay hidden.
|
|
9
|
+
*
|
|
10
|
+
* A request may override the queue's visibility timeout for the messages it
|
|
11
|
+
* receives, which is how a consumer with a slow handler asks for longer.
|
|
12
|
+
*/
|
|
13
|
+
export declare function visibilityTimeoutFor(queue: SimSqsQueue, input: SimReceiveMessageCommandInput): number;
|
|
14
|
+
/**
|
|
15
|
+
* Check a long polling wait time, which this simulation accepts and does not
|
|
16
|
+
* wait out.
|
|
17
|
+
*
|
|
18
|
+
* There is nothing to wait for in process: a receive answers from state that is
|
|
19
|
+
* already there, so waiting could only ever time out. Returning at once is the
|
|
20
|
+
* honest behaviour, and it is documented as a divergence rather than hidden.
|
|
21
|
+
*/
|
|
22
|
+
export declare function assertWaitTime(requested: number | undefined): void;
|
|
23
|
+
/**
|
|
24
|
+
* Refuse the receive inputs this simulation does not model.
|
|
25
|
+
*/
|
|
26
|
+
export declare function refuseUnsimulatedReceiveInput(input: SimReceiveMessageCommandInput): void;
|
|
27
|
+
//# sourceMappingURL=sim-sqs-receive-limits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-limits.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-limits.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAM1E;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAkB3E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,6BAA6B,GACnC,MAAM,CAoBR;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAgBlE;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,6BAA6B,GACnC,IAAI,CAON"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { SimSqsInvalidParameterValue, SimSqsUnsupportedOperation, } from "../../error/sim-sqs.error.js";
|
|
2
|
+
const maximumMessages = 10;
|
|
3
|
+
const maximumVisibilityTimeoutSeconds = 43_200;
|
|
4
|
+
const maximumWaitTimeSeconds = 20;
|
|
5
|
+
/**
|
|
6
|
+
* How many messages a request may be answered with.
|
|
7
|
+
*/
|
|
8
|
+
export function requestedMessageCount(requested) {
|
|
9
|
+
if (requested === undefined) {
|
|
10
|
+
return 1;
|
|
11
|
+
}
|
|
12
|
+
if (!Number.isSafeInteger(requested) ||
|
|
13
|
+
requested < 1 ||
|
|
14
|
+
requested > maximumMessages) {
|
|
15
|
+
throw new SimSqsInvalidParameterValue(`Value ${String(requested)} for parameter MaxNumberOfMessages is ` +
|
|
16
|
+
`invalid. Reason: Must be between 1 and ${String(maximumMessages)}, ` +
|
|
17
|
+
`if provided.`);
|
|
18
|
+
}
|
|
19
|
+
return requested;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* How long the messages this request hands out stay hidden.
|
|
23
|
+
*
|
|
24
|
+
* A request may override the queue's visibility timeout for the messages it
|
|
25
|
+
* receives, which is how a consumer with a slow handler asks for longer.
|
|
26
|
+
*/
|
|
27
|
+
export function visibilityTimeoutFor(queue, input) {
|
|
28
|
+
const requested = input.VisibilityTimeout;
|
|
29
|
+
if (requested === undefined) {
|
|
30
|
+
return queue.attributes.visibilityTimeoutSeconds;
|
|
31
|
+
}
|
|
32
|
+
if (!Number.isSafeInteger(requested) ||
|
|
33
|
+
requested < 0 ||
|
|
34
|
+
requested > maximumVisibilityTimeoutSeconds) {
|
|
35
|
+
throw new SimSqsInvalidParameterValue(`Value ${String(requested)} for parameter VisibilityTimeout is ` +
|
|
36
|
+
`invalid. Reason: Must be an integer from 0 to ` +
|
|
37
|
+
`${String(maximumVisibilityTimeoutSeconds)}.`);
|
|
38
|
+
}
|
|
39
|
+
return requested;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Check a long polling wait time, which this simulation accepts and does not
|
|
43
|
+
* wait out.
|
|
44
|
+
*
|
|
45
|
+
* There is nothing to wait for in process: a receive answers from state that is
|
|
46
|
+
* already there, so waiting could only ever time out. Returning at once is the
|
|
47
|
+
* honest behaviour, and it is documented as a divergence rather than hidden.
|
|
48
|
+
*/
|
|
49
|
+
export function assertWaitTime(requested) {
|
|
50
|
+
if (requested === undefined) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (!Number.isSafeInteger(requested) ||
|
|
54
|
+
requested < 0 ||
|
|
55
|
+
requested > maximumWaitTimeSeconds) {
|
|
56
|
+
throw new SimSqsInvalidParameterValue(`Value ${String(requested)} for parameter WaitTimeSeconds is invalid. ` +
|
|
57
|
+
`Reason: Must be an integer from 0 to ` +
|
|
58
|
+
`${String(maximumWaitTimeSeconds)}.`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Refuse the receive inputs this simulation does not model.
|
|
63
|
+
*/
|
|
64
|
+
export function refuseUnsimulatedReceiveInput(input) {
|
|
65
|
+
if (input.ReceiveRequestAttemptId !== undefined) {
|
|
66
|
+
throw new SimSqsUnsupportedOperation("ReceiveRequestAttemptId applies to FIFO queues, which simulated SQS " +
|
|
67
|
+
"does not support");
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=sim-sqs-receive-limits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-limits.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-limits.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AAItC,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAC/C,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAA6B;IACjE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;QAChC,SAAS,GAAG,CAAC;QACb,SAAS,GAAG,eAAe,EAC3B,CAAC;QACD,MAAM,IAAI,2BAA2B,CACnC,SAAS,MAAM,CAAC,SAAS,CAAC,wCAAwC;YAChE,0CAA0C,MAAM,CAAC,eAAe,CAAC,IAAI;YACrE,cAAc,CACjB,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAkB,EAClB,KAAoC;IAEpC,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAE1C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC;IACnD,CAAC;IAED,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;QAChC,SAAS,GAAG,CAAC;QACb,SAAS,GAAG,+BAA+B,EAC3C,CAAC;QACD,MAAM,IAAI,2BAA2B,CACnC,SAAS,MAAM,CAAC,SAAS,CAAC,sCAAsC;YAC9D,gDAAgD;YAChD,GAAG,MAAM,CAAC,+BAA+B,CAAC,GAAG,CAChD,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,SAA6B;IAC1D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC;QAChC,SAAS,GAAG,CAAC;QACb,SAAS,GAAG,sBAAsB,EAClC,CAAC;QACD,MAAM,IAAI,2BAA2B,CACnC,SAAS,MAAM,CAAC,SAAS,CAAC,6CAA6C;YACrE,uCAAuC;YACvC,GAAG,MAAM,CAAC,sBAAsB,CAAC,GAAG,CACvC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAAoC;IAEpC,IAAI,KAAK,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,IAAI,0BAA0B,CAClC,sEAAsE;YACpE,kBAAkB,CACrB,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
3
|
+
import type { SimSqsQueueAccess } from "../queue/sim-sqs-queue-access.js";
|
|
4
|
+
import type { SimReceiveMessageCommand, SimReceiveMessageCommandOutput } from "./receive.command.js";
|
|
5
|
+
interface SimSqsReceiveMessageProperties {
|
|
6
|
+
readonly access: SimSqsQueueAccess;
|
|
7
|
+
readonly clock: BackgroundScheduler;
|
|
8
|
+
}
|
|
9
|
+
interface SimSqsReceiveMessageOptions {
|
|
10
|
+
readonly caller?: SimAwsCaller;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The ReceiveMessage command.
|
|
14
|
+
*
|
|
15
|
+
* Receiving hides each message it hands out for the visibility timeout, so the
|
|
16
|
+
* same message does not come back to a second consumer while the first is still
|
|
17
|
+
* working on it. Nothing is scheduled to release it: the message records the
|
|
18
|
+
* instant it is hidden until, and it becomes receivable again when simulated
|
|
19
|
+
* time reaches it. Advancing the clock is therefore all a test has to do to
|
|
20
|
+
* watch an undeleted message come back.
|
|
21
|
+
*/
|
|
22
|
+
export declare class SimSqsReceiveMessage {
|
|
23
|
+
private readonly access;
|
|
24
|
+
private readonly clock;
|
|
25
|
+
constructor(properties: SimSqsReceiveMessageProperties);
|
|
26
|
+
/**
|
|
27
|
+
* Receive up to `MaxNumberOfMessages` messages, hiding each of them.
|
|
28
|
+
*/
|
|
29
|
+
handle(command: SimReceiveMessageCommand, options?: SimSqsReceiveMessageOptions): SimReceiveMessageCommandOutput;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=sim-sqs-receive-message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-message.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EACV,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,sBAAsB,CAAC;AAG9B,UAAU,8BAA8B;IACtC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAED,UAAU,2BAA2B;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;;;;GASG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAE5C,YAAY,UAAU,EAAE,8BAA8B,EAGrD;IAED;;OAEG;IACH,MAAM,CACJ,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,2BAA2B,GACpC,8BAA8B,CAchC;CACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { SimSqsReceiveRequest } from "./sim-sqs-receive-request.js";
|
|
2
|
+
/**
|
|
3
|
+
* The ReceiveMessage command.
|
|
4
|
+
*
|
|
5
|
+
* Receiving hides each message it hands out for the visibility timeout, so the
|
|
6
|
+
* same message does not come back to a second consumer while the first is still
|
|
7
|
+
* working on it. Nothing is scheduled to release it: the message records the
|
|
8
|
+
* instant it is hidden until, and it becomes receivable again when simulated
|
|
9
|
+
* time reaches it. Advancing the clock is therefore all a test has to do to
|
|
10
|
+
* watch an undeleted message come back.
|
|
11
|
+
*/
|
|
12
|
+
export class SimSqsReceiveMessage {
|
|
13
|
+
access;
|
|
14
|
+
clock;
|
|
15
|
+
constructor(properties) {
|
|
16
|
+
this.access = properties.access;
|
|
17
|
+
this.clock = properties.clock;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Receive up to `MaxNumberOfMessages` messages, hiding each of them.
|
|
21
|
+
*/
|
|
22
|
+
handle(command, options) {
|
|
23
|
+
const queue = this.access.requireByUrl("sqs:ReceiveMessage", command.input.QueueUrl, options?.caller);
|
|
24
|
+
const request = SimSqsReceiveRequest.of(command.input, queue);
|
|
25
|
+
const receivedAt = this.clock.now();
|
|
26
|
+
const received = queue.receivable(receivedAt, request.messageCount);
|
|
27
|
+
return {
|
|
28
|
+
$metadata: {},
|
|
29
|
+
Messages: request.taken(queue, received, receivedAt),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=sim-sqs-receive-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-message.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-message.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAWpE;;;;;;;;;GASG;AACH,MAAM,OAAO,oBAAoB;IACd,MAAM,CAAoB;IAC1B,KAAK,CAAsB;IAE5C,YAAY,UAA0C;QACpD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CACJ,OAAiC,EACjC,OAAqC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,oBAAoB,EACpB,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAEpE,OAAO;YACL,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC;SACrD,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { SimSqsMessage } from "../../message/sim-sqs-message.js";
|
|
2
|
+
import type { SimSqsQueue } from "../../queue/sim-sqs-queue.js";
|
|
3
|
+
import type { SimReceiveMessageCommandInput, SimSqsReceivedMessage } from "./receive.command.js";
|
|
4
|
+
/**
|
|
5
|
+
* One checked receive request.
|
|
6
|
+
*
|
|
7
|
+
* Everything a receive decides before it hands anything out lives here: how many
|
|
8
|
+
* messages it may take, how long they stay hidden, and how they are reported. The
|
|
9
|
+
* whole request is checked before the first message is touched, so an invalid
|
|
10
|
+
* request never half-receives one.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SimSqsReceiveRequest {
|
|
13
|
+
readonly messageCount: number;
|
|
14
|
+
private readonly visibilityTimeoutSeconds;
|
|
15
|
+
private readonly view;
|
|
16
|
+
private constructor();
|
|
17
|
+
/**
|
|
18
|
+
* Read a receive request, refusing one real SQS would refuse.
|
|
19
|
+
*/
|
|
20
|
+
static of(input: SimReceiveMessageCommandInput, queue: SimSqsQueue): SimSqsReceiveRequest;
|
|
21
|
+
/**
|
|
22
|
+
* Take the messages this request found, or nothing at all.
|
|
23
|
+
*
|
|
24
|
+
* Real SQS sends no `Messages` field rather than an empty list when there is
|
|
25
|
+
* nothing to hand out, so an empty receive is reported as absence.
|
|
26
|
+
*/
|
|
27
|
+
taken(queue: SimSqsQueue, found: readonly SimSqsMessage[], receivedAt: Date): readonly SimSqsReceivedMessage[] | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Take one message: hide it, record the handle it went out under, and report it.
|
|
30
|
+
*/
|
|
31
|
+
private take;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=sim-sqs-receive-request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-request.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EACV,6BAA6B,EAC7B,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAS9B;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAC/B,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA4B;IAEjD,OAAO,eAaN;IAED;;OAEG;IACH,MAAM,CAAC,EAAE,CACP,KAAK,EAAE,6BAA6B,EACpC,KAAK,EAAE,WAAW,GACjB,oBAAoB,CAKtB;IAED;;;;;OAKG;IACH,KAAK,CACH,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,SAAS,aAAa,EAAE,EAC/B,UAAU,EAAE,IAAI,GACf,SAAS,qBAAqB,EAAE,GAAG,SAAS,CAM9C;IAED;;OAEG;IACH,OAAO,CAAC,IAAI;CAYb"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SimSqsRequestedSystemAttributes } from "../../message/sim-sqs-message-system-attributes.js";
|
|
2
|
+
import { makeSimSqsReceiptHandle } from "../../message/sim-sqs-receipt-handle.js";
|
|
3
|
+
import { assertWaitTime, refuseUnsimulatedReceiveInput, requestedMessageCount, visibilityTimeoutFor, } from "./sim-sqs-receive-limits.js";
|
|
4
|
+
import { SimSqsReceivedMessageView } from "./sim-sqs-received-message-view.js";
|
|
5
|
+
/**
|
|
6
|
+
* One checked receive request.
|
|
7
|
+
*
|
|
8
|
+
* Everything a receive decides before it hands anything out lives here: how many
|
|
9
|
+
* messages it may take, how long they stay hidden, and how they are reported. The
|
|
10
|
+
* whole request is checked before the first message is touched, so an invalid
|
|
11
|
+
* request never half-receives one.
|
|
12
|
+
*/
|
|
13
|
+
export class SimSqsReceiveRequest {
|
|
14
|
+
messageCount;
|
|
15
|
+
visibilityTimeoutSeconds;
|
|
16
|
+
view;
|
|
17
|
+
constructor(input, queue) {
|
|
18
|
+
this.messageCount = requestedMessageCount(input.MaxNumberOfMessages);
|
|
19
|
+
this.visibilityTimeoutSeconds = visibilityTimeoutFor(queue, input);
|
|
20
|
+
this.view = new SimSqsReceivedMessageView({
|
|
21
|
+
systemAttributes: SimSqsRequestedSystemAttributes.of(input.MessageSystemAttributeNames, input.AttributeNames),
|
|
22
|
+
messageAttributeNames: input.MessageAttributeNames,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Read a receive request, refusing one real SQS would refuse.
|
|
27
|
+
*/
|
|
28
|
+
static of(input, queue) {
|
|
29
|
+
refuseUnsimulatedReceiveInput(input);
|
|
30
|
+
assertWaitTime(input.WaitTimeSeconds);
|
|
31
|
+
return new this(input, queue);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Take the messages this request found, or nothing at all.
|
|
35
|
+
*
|
|
36
|
+
* Real SQS sends no `Messages` field rather than an empty list when there is
|
|
37
|
+
* nothing to hand out, so an empty receive is reported as absence.
|
|
38
|
+
*/
|
|
39
|
+
taken(queue, found, receivedAt) {
|
|
40
|
+
if (found.length === 0) {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
return found.map((message) => this.take(queue, message, receivedAt));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Take one message: hide it, record the handle it went out under, and report it.
|
|
47
|
+
*/
|
|
48
|
+
take(queue, message, receivedAt) {
|
|
49
|
+
const receiptHandle = makeSimSqsReceiptHandle();
|
|
50
|
+
message.receiveAt(receivedAt, this.visibilityTimeoutSeconds, receiptHandle);
|
|
51
|
+
queue.recordHandle(receiptHandle, message);
|
|
52
|
+
return this.view.of(message, receiptHandle);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=sim-sqs-receive-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-receive-request.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-receive-request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAMlF,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAoB;IACf,YAAY,CAAS;IAEpB,wBAAwB,CAAS;IACjC,IAAI,CAA4B;IAEjD,YACE,KAAoC,EACpC,KAAkB;QAElB,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACrE,IAAI,CAAC,wBAAwB,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,GAAG,IAAI,yBAAyB,CAAC;YACxC,gBAAgB,EAAE,+BAA+B,CAAC,EAAE,CAClD,KAAK,CAAC,2BAA2B,EACjC,KAAK,CAAC,cAAc,CACrB;YACD,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;SACnD,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,EAAE,CACP,KAAoC,EACpC,KAAkB;QAElB,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACrC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEtC,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CACH,KAAkB,EAClB,KAA+B,EAC/B,UAAgB;QAEhB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACK,IAAI,CACV,KAAkB,EAClB,OAAsB,EACtB,UAAgB;QAEhB,MAAM,aAAa,GAAG,uBAAuB,EAAE,CAAC;QAEhD,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,aAAa,CAAC,CAAC;QAC5E,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAE3C,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;CACF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { SimSqsMessage } from "../../message/sim-sqs-message.js";
|
|
2
|
+
import type { SimSqsRequestedSystemAttributes } from "../../message/sim-sqs-message-system-attributes.js";
|
|
3
|
+
import type { SimSqsReceivedMessage } from "./receive.command.js";
|
|
4
|
+
interface SimSqsReceivedMessageViewProperties {
|
|
5
|
+
readonly systemAttributes: SimSqsRequestedSystemAttributes;
|
|
6
|
+
readonly messageAttributeNames: readonly string[] | undefined;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* How one receive request reports the messages it takes.
|
|
10
|
+
*
|
|
11
|
+
* Both attribute kinds are reported only when the request named them, which is
|
|
12
|
+
* what real SQS does. A consumer that never named an attribute gets a message
|
|
13
|
+
* without it here, rather than one that would lose the attribute on AWS.
|
|
14
|
+
*/
|
|
15
|
+
export declare class SimSqsReceivedMessageView {
|
|
16
|
+
private readonly systemAttributes;
|
|
17
|
+
private readonly messageAttributeNames;
|
|
18
|
+
constructor(properties: SimSqsReceivedMessageViewProperties);
|
|
19
|
+
/**
|
|
20
|
+
* One received message as SQS reports it.
|
|
21
|
+
*/
|
|
22
|
+
of(message: SimSqsMessage, receiptHandle: string): SimSqsReceivedMessage;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=sim-sqs-received-message-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-received-message-view.d.ts","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-received-message-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,gBAAgB,EAAE,+BAA+B,CAAC;IAC3D,QAAQ,CAAC,qBAAqB,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAC/D;AAED;;;;;;GAMG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAgC;IAEtE,YAAY,UAAU,EAAE,mCAAmC,EAG1D;IAED;;OAEG;IACH,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,GAAG,qBAAqB,CAWvE;CACF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How one receive request reports the messages it takes.
|
|
3
|
+
*
|
|
4
|
+
* Both attribute kinds are reported only when the request named them, which is
|
|
5
|
+
* what real SQS does. A consumer that never named an attribute gets a message
|
|
6
|
+
* without it here, rather than one that would lose the attribute on AWS.
|
|
7
|
+
*/
|
|
8
|
+
export class SimSqsReceivedMessageView {
|
|
9
|
+
systemAttributes;
|
|
10
|
+
messageAttributeNames;
|
|
11
|
+
constructor(properties) {
|
|
12
|
+
this.systemAttributes = properties.systemAttributes;
|
|
13
|
+
this.messageAttributeNames = properties.messageAttributeNames;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* One received message as SQS reports it.
|
|
17
|
+
*/
|
|
18
|
+
of(message, receiptHandle) {
|
|
19
|
+
return {
|
|
20
|
+
MessageId: message.messageId,
|
|
21
|
+
ReceiptHandle: receiptHandle,
|
|
22
|
+
MD5OfBody: message.body.digest,
|
|
23
|
+
Body: message.body.value,
|
|
24
|
+
Attributes: this.systemAttributes.from(message.systemAttributeValues()),
|
|
25
|
+
...reportedMessageAttributes(message.attributes.selected(this.messageAttributeNames)),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function reportedMessageAttributes(selected) {
|
|
30
|
+
if (selected.isEmpty) {
|
|
31
|
+
return {};
|
|
32
|
+
}
|
|
33
|
+
return {
|
|
34
|
+
MessageAttributes: selected.reported(),
|
|
35
|
+
MD5OfMessageAttributes: selected.digest(),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=sim-sqs-received-message-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-received-message-view.js","sourceRoot":"","sources":["../../../../../src/service/sqs/command/message/sim-sqs-received-message-view.ts"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,MAAM,OAAO,yBAAyB;IACnB,gBAAgB,CAAkC;IAClD,qBAAqB,CAAgC;IAEtE,YAAY,UAA+C;QACzD,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,qBAAqB,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,OAAsB,EAAE,aAAqB;QAC9C,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,aAAa;YAC5B,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;YAC9B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;YACxB,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACvE,GAAG,yBAAyB,CAC1B,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CACxD;SACF,CAAC;IACJ,CAAC;CACF;AAED,SAAS,yBAAyB,CAChC,QAAiC;IAEjC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE;QACtC,sBAAsB,EAAE,QAAQ,CAAC,MAAM,EAAE;KAC1C,CAAC;AACJ,CAAC"}
|