@kensio/yulin 1.20.4 → 1.20.6
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/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +22 -3
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.d.ts +31 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.js +43 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.d.ts +32 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.js +34 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.d.ts +27 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.js +39 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.js.map +1 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts +6 -5
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts.map +1 -1
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +10 -8
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js.map +1 -1
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.d.ts +24 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.d.ts.map +1 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.js +94 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.js.map +1 -0
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js +4 -4
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.d.ts.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.js +3 -4
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.js.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.d.ts +27 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.d.ts.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.js +119 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.js.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.d.ts +18 -3
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.d.ts.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.js +28 -5
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.js.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts +14 -4
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js +17 -5
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts +6 -2
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js +7 -3
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js.map +1 -1
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts +28 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js +52 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts +30 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js +59 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.d.ts +12 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.js +23 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.js.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.d.ts +50 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.js +107 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.js.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts +29 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js +50 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.d.ts +16 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.d.ts.map +1 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.js +39 -0
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.js.map +1 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +27 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts.map +1 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +49 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js.map +1 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +8 -3
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts.map +1 -1
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +48 -23
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js.map +1 -1
- package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.d.ts +10 -0
- package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.d.ts.map +1 -0
- package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.js +13 -0
- package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.js.map +1 -0
- package/dist/service/logs/command/authorize/sim-logs-authorizer.d.ts +9 -1
- package/dist/service/logs/command/authorize/sim-logs-authorizer.d.ts.map +1 -1
- package/dist/service/logs/command/authorize/sim-logs-authorizer.js +8 -0
- package/dist/service/logs/command/authorize/sim-logs-authorizer.js.map +1 -1
- package/dist/service/logs/command/delivery/delivery-destination.command.d.ts +67 -0
- package/dist/service/logs/command/delivery/delivery-destination.command.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/delivery-destination.command.js +2 -0
- package/dist/service/logs/command/delivery/delivery-destination.command.js.map +1 -0
- package/dist/service/logs/command/delivery/delivery-source.command.d.ts +61 -0
- package/dist/service/logs/command/delivery/delivery-source.command.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/delivery-source.command.js +2 -0
- package/dist/service/logs/command/delivery/delivery-source.command.js.map +1 -0
- package/dist/service/logs/command/delivery/delivery.command.d.ts +73 -0
- package/dist/service/logs/command/delivery/delivery.command.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/delivery.command.js +2 -0
- package/dist/service/logs/command/delivery/delivery.command.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-created-delivery.d.ts +21 -0
- package/dist/service/logs/command/delivery/sim-logs-created-delivery.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-created-delivery.js +41 -0
- package/dist/service/logs/command/delivery/sim-logs-created-delivery.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-commands.d.ts +38 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-commands.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-commands.js +77 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-commands.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.d.ts +38 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.js +82 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-detail.d.ts +19 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-detail.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-detail.js +57 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-detail.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.d.ts +15 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.js +26 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-input.d.ts +16 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-input.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-input.js +28 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-input.js.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts +37 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts.map +1 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js +86 -0
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js.map +1 -0
- package/dist/service/logs/command/sim-logs-command.types.d.ts +3 -0
- package/dist/service/logs/command/sim-logs-command.types.d.ts.map +1 -1
- package/dist/service/logs/delivery/sim-logs-delivery-arn.d.ts +30 -0
- package/dist/service/logs/delivery/sim-logs-delivery-arn.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-arn.js +42 -0
- package/dist/service/logs/delivery/sim-logs-delivery-arn.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-store.d.ts +41 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-store.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-store.js +69 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-store.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-type.d.ts +16 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-type.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-type.js +48 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination-type.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination.d.ts +27 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination.js +23 -0
- package/dist/service/logs/delivery/sim-logs-delivery-destination.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-ids.d.ts +16 -0
- package/dist/service/logs/delivery/sim-logs-delivery-ids.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-ids.js +20 -0
- package/dist/service/logs/delivery/sim-logs-delivery-ids.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-output-format.d.ts +24 -0
- package/dist/service/logs/delivery/sim-logs-delivery-output-format.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-output-format.js +36 -0
- package/dist/service/logs/delivery/sim-logs-delivery-output-format.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.d.ts +35 -0
- package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.js +66 -0
- package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-service.d.ts +48 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-service.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-service.js +71 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-service.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-store.d.ts +42 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-store.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-store.js +64 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source-store.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source.d.ts +29 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source.js +29 -0
- package/dist/service/logs/delivery/sim-logs-delivery-source.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-store.d.ts +32 -0
- package/dist/service/logs/delivery/sim-logs-delivery-store.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery-store.js +53 -0
- package/dist/service/logs/delivery/sim-logs-delivery-store.js.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery.d.ts +33 -0
- package/dist/service/logs/delivery/sim-logs-delivery.d.ts.map +1 -0
- package/dist/service/logs/delivery/sim-logs-delivery.js +34 -0
- package/dist/service/logs/delivery/sim-logs-delivery.js.map +1 -0
- package/dist/service/logs/error/sim-logs.error.d.ts +23 -0
- package/dist/service/logs/error/sim-logs.error.d.ts.map +1 -1
- package/dist/service/logs/error/sim-logs.error.js +27 -0
- package/dist/service/logs/error/sim-logs.error.js.map +1 -1
- package/dist/service/logs/index.d.ts +10 -1
- package/dist/service/logs/index.d.ts.map +1 -1
- package/dist/service/logs/index.js +9 -1
- package/dist/service/logs/index.js.map +1 -1
- package/dist/service/logs/sdk/sim-logs-sdk-command-router.d.ts.map +1 -1
- package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +36 -0
- package/dist/service/logs/sdk/sim-logs-sdk-command-router.js.map +1 -1
- package/dist/service/logs/sim-logs-commands.d.ts +12 -0
- package/dist/service/logs/sim-logs-commands.d.ts.map +1 -1
- package/dist/service/logs/sim-logs-commands.js +37 -0
- package/dist/service/logs/sim-logs-commands.js.map +1 -1
- package/dist/service/logs/sim-logs-delivery-inspection.d.ts +28 -0
- package/dist/service/logs/sim-logs-delivery-inspection.d.ts.map +1 -0
- package/dist/service/logs/sim-logs-delivery-inspection.js +35 -0
- package/dist/service/logs/sim-logs-delivery-inspection.js.map +1 -0
- package/dist/service/logs/sim-logs-delivery-operations.d.ts +35 -0
- package/dist/service/logs/sim-logs-delivery-operations.d.ts.map +1 -0
- package/dist/service/logs/sim-logs-delivery-operations.js +58 -0
- package/dist/service/logs/sim-logs-delivery-operations.js.map +1 -0
- package/dist/service/logs/sim-logs.d.ts +8 -2
- package/dist/service/logs/sim-logs.d.ts.map +1 -1
- package/dist/service/logs/sim-logs.js +39 -33
- package/dist/service/logs/sim-logs.js.map +1 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +83 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +87 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +24 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +42 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts +24 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js +51 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +38 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts.map +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +66 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js.map +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +34 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket.js +43 -4
- package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts +31 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts.map +1 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +69 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js.map +1 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +31 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts.map +1 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +50 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js.map +1 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-transitions.d.ts +19 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-transitions.d.ts.map +1 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-transitions.js +28 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-transitions.js.map +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts.map +1 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +11 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js.map +1 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts.map +1 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +1 -4
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js.map +1 -1
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js +1 -1
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js.map +1 -1
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.command.d.ts +20 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.command.d.ts.map +1 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.command.js +2 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.command.js.map +1 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.handler.d.ts +29 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.handler.d.ts.map +1 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.handler.js +37 -0
- package/dist/service/s3/command/delete-bucket-lifecycle/delete-bucket-lifecycle.handler.js.map +1 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.command.d.ts +26 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.command.d.ts.map +1 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.command.js +2 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.command.js.map +1 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.handler.d.ts +30 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.handler.d.ts.map +1 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.handler.js +43 -0
- package/dist/service/s3/command/get-bucket-lifecycle-configuration/get-bucket-lifecycle-configuration.handler.js.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-authorizer.d.ts +32 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-authorizer.d.ts.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-authorizer.js +51 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-authorizer.js.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-commands.d.ts +23 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-commands.d.ts.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-commands.js +31 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-commands.js.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.d.ts +12 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.d.ts.map +1 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js +53 -0
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js.map +1 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.d.ts +111 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.d.ts.map +1 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.js +2 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.js.map +1 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.handler.d.ts +30 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.handler.d.ts.map +1 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.handler.js +43 -0
- package/dist/service/s3/command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.handler.js.map +1 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +3 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts.map +1 -1
- package/dist/service/s3/error/sim-s3.error.d.ts +11 -0
- package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
- package/dist/service/s3/error/sim-s3.error.js +13 -0
- package/dist/service/s3/error/sim-s3.error.js.map +1 -1
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.d.ts.map +1 -1
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +12 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js.map +1 -1
- package/dist/service/s3/sim-s3-commands.d.ts +2 -0
- package/dist/service/s3/sim-s3-commands.d.ts.map +1 -1
- package/dist/service/s3/sim-s3-commands.js +3 -0
- package/dist/service/s3/sim-s3-commands.js.map +1 -1
- package/dist/service/s3/sim-s3-operations.d.ts +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts.map +1 -1
- package/dist/service/s3/sim-s3-operations.js +12 -0
- package/dist/service/s3/sim-s3-operations.js.map +1 -1
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts +9 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts.map +1 -1
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js +15 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js.map +1 -1
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.d.ts.map +1 -1
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.js +4 -5
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.js.map +1 -1
- package/dist/util/clock/sim-clock-control.d.ts +8 -0
- package/dist/util/clock/sim-clock-control.d.ts.map +1 -1
- package/dist/util/clock/sim-clock-control.js +10 -0
- package/dist/util/clock/sim-clock-control.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { SimLogsDeliveryInspection } from "./sim-logs-delivery-inspection.js";
|
|
2
|
+
/**
|
|
3
|
+
* The delivery commands of the simulated CloudWatch Logs facade.
|
|
4
|
+
*
|
|
5
|
+
* They sit here rather than on SimLogs itself because that file grows by one
|
|
6
|
+
* delegating method per simulated operation and is at the length this codebase
|
|
7
|
+
* allows. The nine belong together: they are the half of CloudWatch Logs that
|
|
8
|
+
* sets up delivery from another service, and they share no state with the log
|
|
9
|
+
* group operations at all.
|
|
10
|
+
*/
|
|
11
|
+
export class SimLogsDeliveryOperations extends SimLogsDeliveryInspection {
|
|
12
|
+
/** Handle a PutDeliverySource Command from the SDK. */
|
|
13
|
+
async putDeliverySource(command, options) {
|
|
14
|
+
await this.commands.background.sequence();
|
|
15
|
+
return this.commands.deliverySources.putDeliverySource(command, options);
|
|
16
|
+
}
|
|
17
|
+
/** Handle a DescribeDeliverySources Command from the SDK. */
|
|
18
|
+
async describeDeliverySources(command, options) {
|
|
19
|
+
await this.commands.background.sequence();
|
|
20
|
+
return this.commands.deliverySources.describeDeliverySources(command, options);
|
|
21
|
+
}
|
|
22
|
+
/** Handle a DeleteDeliverySource Command from the SDK. */
|
|
23
|
+
async deleteDeliverySource(command, options) {
|
|
24
|
+
await this.commands.background.sequence();
|
|
25
|
+
return this.commands.deliverySources.deleteDeliverySource(command, options);
|
|
26
|
+
}
|
|
27
|
+
/** Handle a PutDeliveryDestination Command from the SDK. */
|
|
28
|
+
async putDeliveryDestination(command, options) {
|
|
29
|
+
await this.commands.background.sequence();
|
|
30
|
+
return this.commands.deliveryDestinations.putDeliveryDestination(command, options);
|
|
31
|
+
}
|
|
32
|
+
/** Handle a DescribeDeliveryDestinations Command from the SDK. */
|
|
33
|
+
async describeDeliveryDestinations(command, options) {
|
|
34
|
+
await this.commands.background.sequence();
|
|
35
|
+
return this.commands.deliveryDestinations.describeDeliveryDestinations(command, options);
|
|
36
|
+
}
|
|
37
|
+
/** Handle a DeleteDeliveryDestination Command from the SDK. */
|
|
38
|
+
async deleteDeliveryDestination(command, options) {
|
|
39
|
+
await this.commands.background.sequence();
|
|
40
|
+
return this.commands.deliveryDestinations.deleteDeliveryDestination(command, options);
|
|
41
|
+
}
|
|
42
|
+
/** Handle a CreateDelivery Command from the SDK. */
|
|
43
|
+
async createDelivery(command, options) {
|
|
44
|
+
await this.commands.background.sequence();
|
|
45
|
+
return this.commands.deliveries.createDelivery(command, options);
|
|
46
|
+
}
|
|
47
|
+
/** Handle a DescribeDeliveries Command from the SDK. */
|
|
48
|
+
async describeDeliveries(command, options) {
|
|
49
|
+
await this.commands.background.sequence();
|
|
50
|
+
return this.commands.deliveries.describeDeliveries(command, options);
|
|
51
|
+
}
|
|
52
|
+
/** Handle a DeleteDelivery Command from the SDK. */
|
|
53
|
+
async deleteDelivery(command, options) {
|
|
54
|
+
await this.commands.background.sequence();
|
|
55
|
+
return this.commands.deliveries.deleteDelivery(command, options);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=sim-logs-delivery-operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-logs-delivery-operations.js","sourceRoot":"","sources":["../../../src/service/logs/sim-logs-delivery-operations.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E;;;;;;;;GAQG;AACH,MAAM,OAAgB,yBAA0B,SAAQ,yBAAyB;IAG/E,uDAAuD;IACvD,KAAK,CAAC,iBAAiB,CACrB,OAAoD,EACpD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,uBAAuB,CAC3B,OAA0D,EAC1D,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,uBAAuB,CAC1D,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,oBAAoB,CACxB,OAAuD,EACvD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,4DAA4D;IAC5D,KAAK,CAAC,sBAAsB,CAC1B,OAAyD,EACzD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,sBAAsB,CAC9D,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,4BAA4B,CAChC,OAA+D,EAC/D,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,4BAA4B,CACpE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,yBAAyB,CAC7B,OAA4D,EAC5D,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,yBAAyB,CACjE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,cAAc,CAClB,OAAiD,EACjD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,wDAAwD;IACxD,KAAK,CAAC,kBAAkB,CACtB,OAAqD,EACrD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,cAAc,CAClB,OAAiD,EACjD,OAA+B;QAE/B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF"}
|
|
@@ -3,7 +3,8 @@ import { SimLogsCfnResourceFactory } from "./cfn/sim-logs-cfn-resource-factory.j
|
|
|
3
3
|
import type * as simLogsCommands from "./command/sim-logs-command.types.js";
|
|
4
4
|
import type { SimLogsRequestOptions } from "./command/sim-logs-request-options.js";
|
|
5
5
|
import type { SimLogsLogGroup } from "./group/sim-logs-log-group.js";
|
|
6
|
-
import { type SimLogsProperties } from "./sim-logs-commands.js";
|
|
6
|
+
import { SimLogsCommands, type SimLogsProperties } from "./sim-logs-commands.js";
|
|
7
|
+
import { SimLogsDeliveryOperations } from "./sim-logs-delivery-operations.js";
|
|
7
8
|
import type { SimLogsSubscriptionFailure } from "./subscription/sim-logs-subscription-fan-out.js";
|
|
8
9
|
import type { SimLogsServiceWriter } from "./write/sim-logs-service-writer.js";
|
|
9
10
|
/**
|
|
@@ -18,9 +19,14 @@ import type { SimLogsServiceWriter } from "./write/sim-logs-service-writer.js";
|
|
|
18
19
|
* than acted on, because a test would have to move the clock by months to see
|
|
19
20
|
* an event expire, and what teams get wrong about retention is the value they
|
|
20
21
|
* deployed rather than the deletion that eventually follows from it.
|
|
22
|
+
*
|
|
23
|
+
* The delivery operations are held apart in `SimLogsDeliveryOperations`, which
|
|
24
|
+
* this extends, because this file grows by one delegating method per simulated
|
|
25
|
+
* operation and is at the length this codebase allows.
|
|
21
26
|
*/
|
|
22
|
-
export declare class SimLogs {
|
|
27
|
+
export declare class SimLogs extends SimLogsDeliveryOperations {
|
|
23
28
|
#private;
|
|
29
|
+
protected readonly commands: SimLogsCommands;
|
|
24
30
|
constructor(properties?: SimLogsProperties);
|
|
25
31
|
/**
|
|
26
32
|
* Find a log group by name.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-logs.d.ts","sourceRoot":"","sources":["../../../src/service/logs/sim-logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,KAAK,KAAK,eAAe,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,
|
|
1
|
+
{"version":3,"file":"sim-logs.d.ts","sourceRoot":"","sources":["../../../src/service/logs/sim-logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { SimLogsCfnResourceFactory } from "./cfn/sim-logs-cfn-resource-factory.js";
|
|
2
2
|
import { SimLogsSdkCommandRouter } from "./sdk/sim-logs-sdk-command-router.js";
|
|
3
3
|
import { SimLogsCommands, } from "./sim-logs-commands.js";
|
|
4
|
+
import { SimLogsDeliveryOperations } from "./sim-logs-delivery-operations.js";
|
|
4
5
|
/**
|
|
5
6
|
* Simulated CloudWatch Logs. Handles SDK commands. Emulates AWS behaviour and
|
|
6
7
|
* state.
|
|
@@ -13,13 +14,18 @@ import { SimLogsCommands, } from "./sim-logs-commands.js";
|
|
|
13
14
|
* than acted on, because a test would have to move the clock by months to see
|
|
14
15
|
* an event expire, and what teams get wrong about retention is the value they
|
|
15
16
|
* deployed rather than the deletion that eventually follows from it.
|
|
17
|
+
*
|
|
18
|
+
* The delivery operations are held apart in `SimLogsDeliveryOperations`, which
|
|
19
|
+
* this extends, because this file grows by one delegating method per simulated
|
|
20
|
+
* operation and is at the length this codebase allows.
|
|
16
21
|
*/
|
|
17
|
-
export class SimLogs {
|
|
18
|
-
|
|
22
|
+
export class SimLogs extends SimLogsDeliveryOperations {
|
|
23
|
+
commands;
|
|
19
24
|
#sdkRouter = new SimLogsSdkCommandRouter(this);
|
|
20
25
|
#cfnFactory = new SimLogsCfnResourceFactory({ logs: this });
|
|
21
26
|
constructor(properties = {}) {
|
|
22
|
-
|
|
27
|
+
super();
|
|
28
|
+
this.commands = new SimLogsCommands(properties);
|
|
23
29
|
}
|
|
24
30
|
/**
|
|
25
31
|
* Find a log group by name.
|
|
@@ -28,13 +34,13 @@ export class SimLogs {
|
|
|
28
34
|
* state without going through a Command and its authorization.
|
|
29
35
|
*/
|
|
30
36
|
findLogGroup(logGroupName) {
|
|
31
|
-
return this
|
|
37
|
+
return this.commands.groups.find(logGroupName);
|
|
32
38
|
}
|
|
33
39
|
/**
|
|
34
40
|
* Every log group in this scope, in creation order.
|
|
35
41
|
*/
|
|
36
42
|
allLogGroups() {
|
|
37
|
-
return this
|
|
43
|
+
return this.commands.groups.all;
|
|
38
44
|
}
|
|
39
45
|
/**
|
|
40
46
|
* How the rest of the simulation writes to a log group.
|
|
@@ -47,77 +53,77 @@ export class SimLogs {
|
|
|
47
53
|
* documented instead.
|
|
48
54
|
*/
|
|
49
55
|
serviceWriter() {
|
|
50
|
-
return this
|
|
56
|
+
return this.commands.serviceWriter;
|
|
51
57
|
}
|
|
52
58
|
/**
|
|
53
59
|
* Handle a CreateLogGroup Command from the SDK.
|
|
54
60
|
*/
|
|
55
61
|
async createLogGroup(command, options) {
|
|
56
|
-
await this
|
|
57
|
-
return this
|
|
62
|
+
await this.commands.background.sequence();
|
|
63
|
+
return this.commands.logGroups.createLogGroup(command, options);
|
|
58
64
|
}
|
|
59
65
|
/**
|
|
60
66
|
* Handle a DeleteLogGroup Command from the SDK.
|
|
61
67
|
*/
|
|
62
68
|
async deleteLogGroup(command, options) {
|
|
63
|
-
await this
|
|
64
|
-
return this
|
|
69
|
+
await this.commands.background.sequence();
|
|
70
|
+
return this.commands.logGroups.deleteLogGroup(command, options);
|
|
65
71
|
}
|
|
66
72
|
/**
|
|
67
73
|
* Handle a DescribeLogGroups Command from the SDK.
|
|
68
74
|
*/
|
|
69
75
|
async describeLogGroups(command, options) {
|
|
70
|
-
await this
|
|
71
|
-
return this
|
|
76
|
+
await this.commands.background.sequence();
|
|
77
|
+
return this.commands.logGroups.describeLogGroups(command, options);
|
|
72
78
|
}
|
|
73
79
|
/**
|
|
74
80
|
* Handle a PutRetentionPolicy Command from the SDK.
|
|
75
81
|
*/
|
|
76
82
|
async putRetentionPolicy(command, options) {
|
|
77
|
-
await this
|
|
78
|
-
return this
|
|
83
|
+
await this.commands.background.sequence();
|
|
84
|
+
return this.commands.retention.putRetentionPolicy(command, options);
|
|
79
85
|
}
|
|
80
86
|
/**
|
|
81
87
|
* Handle a DeleteRetentionPolicy Command from the SDK.
|
|
82
88
|
*/
|
|
83
89
|
async deleteRetentionPolicy(command, options) {
|
|
84
|
-
await this
|
|
85
|
-
return this
|
|
90
|
+
await this.commands.background.sequence();
|
|
91
|
+
return this.commands.retention.deleteRetentionPolicy(command, options);
|
|
86
92
|
}
|
|
87
93
|
/**
|
|
88
94
|
* Handle a CreateLogStream Command from the SDK.
|
|
89
95
|
*/
|
|
90
96
|
async createLogStream(command, options) {
|
|
91
|
-
await this
|
|
92
|
-
return this
|
|
97
|
+
await this.commands.background.sequence();
|
|
98
|
+
return this.commands.streams.createLogStream(command, options);
|
|
93
99
|
}
|
|
94
100
|
/**
|
|
95
101
|
* Handle a DescribeLogStreams Command from the SDK.
|
|
96
102
|
*/
|
|
97
103
|
async describeLogStreams(command, options) {
|
|
98
|
-
await this
|
|
99
|
-
return this
|
|
104
|
+
await this.commands.background.sequence();
|
|
105
|
+
return this.commands.streams.describeLogStreams(command, options);
|
|
100
106
|
}
|
|
101
107
|
/**
|
|
102
108
|
* Handle a PutLogEvents Command from the SDK.
|
|
103
109
|
*/
|
|
104
110
|
async putLogEvents(command, options) {
|
|
105
|
-
await this
|
|
106
|
-
return this
|
|
111
|
+
await this.commands.background.sequence();
|
|
112
|
+
return this.commands.putLogEvents.handle(command, options);
|
|
107
113
|
}
|
|
108
114
|
/**
|
|
109
115
|
* Handle a GetLogEvents Command from the SDK.
|
|
110
116
|
*/
|
|
111
117
|
async getLogEvents(command, options) {
|
|
112
|
-
await this
|
|
113
|
-
return this
|
|
118
|
+
await this.commands.background.sequence();
|
|
119
|
+
return this.commands.getLogEvents.handle(command, options);
|
|
114
120
|
}
|
|
115
121
|
/**
|
|
116
122
|
* Handle a FilterLogEvents Command from the SDK.
|
|
117
123
|
*/
|
|
118
124
|
async filterLogEvents(command, options) {
|
|
119
|
-
await this
|
|
120
|
-
return this
|
|
125
|
+
await this.commands.background.sequence();
|
|
126
|
+
return this.commands.filterLogEvents.handle(command, options);
|
|
121
127
|
}
|
|
122
128
|
/**
|
|
123
129
|
* Every subscription filter delivery this scope could not make.
|
|
@@ -127,28 +133,28 @@ export class SimLogs {
|
|
|
127
133
|
* subscription it set up never reached anything.
|
|
128
134
|
*/
|
|
129
135
|
get subscriptionFailures() {
|
|
130
|
-
return this
|
|
136
|
+
return this.commands.fanOut.failures;
|
|
131
137
|
}
|
|
132
138
|
/**
|
|
133
139
|
* Handle a PutSubscriptionFilter Command from the SDK.
|
|
134
140
|
*/
|
|
135
141
|
async putSubscriptionFilter(command, options) {
|
|
136
|
-
await this
|
|
137
|
-
return await this
|
|
142
|
+
await this.commands.background.sequence();
|
|
143
|
+
return await this.commands.subscriptions.putSubscriptionFilter(command, options);
|
|
138
144
|
}
|
|
139
145
|
/**
|
|
140
146
|
* Handle a DescribeSubscriptionFilters Command from the SDK.
|
|
141
147
|
*/
|
|
142
148
|
async describeSubscriptionFilters(command, options) {
|
|
143
|
-
await this
|
|
144
|
-
return this
|
|
149
|
+
await this.commands.background.sequence();
|
|
150
|
+
return this.commands.subscriptions.describeSubscriptionFilters(command, options);
|
|
145
151
|
}
|
|
146
152
|
/**
|
|
147
153
|
* Handle a DeleteSubscriptionFilter Command from the SDK.
|
|
148
154
|
*/
|
|
149
155
|
async deleteSubscriptionFilter(command, options) {
|
|
150
|
-
await this
|
|
151
|
-
return this
|
|
156
|
+
await this.commands.background.sequence();
|
|
157
|
+
return this.commands.subscriptions.deleteSubscriptionFilter(command, options);
|
|
152
158
|
}
|
|
153
159
|
/**
|
|
154
160
|
* Get the CloudFormation Resource factory for AWS::Logs::* Resources.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-logs.js","sourceRoot":"","sources":["../../../src/service/logs/sim-logs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AAInF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EACL,eAAe,GAEhB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-logs.js","sourceRoot":"","sources":["../../../src/service/logs/sim-logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { SimS3LifecycleConfiguration as SimS3LifecycleConfigurationInput, SimS3LifecycleRule } from "../../command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.js";
|
|
2
|
+
interface SimS3LifecycleConfigurationProperties {
|
|
3
|
+
readonly rules?: readonly SimS3LifecycleRule[];
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* An Object as a lifecycle rule reads it.
|
|
7
|
+
*/
|
|
8
|
+
export interface SimS3LifecycleObject {
|
|
9
|
+
readonly key: string;
|
|
10
|
+
readonly size: number;
|
|
11
|
+
readonly lastModified: Date;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A multipart upload in progress as a lifecycle rule reads it.
|
|
15
|
+
*/
|
|
16
|
+
export interface SimS3LifecycleUpload {
|
|
17
|
+
readonly key: string;
|
|
18
|
+
readonly initiated: Date;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The lifecycle configuration of one simulated S3 Bucket.
|
|
22
|
+
*
|
|
23
|
+
* A Bucket has one configuration rather than a list of them, which is why
|
|
24
|
+
* PutBucketLifecycleConfiguration replaces the whole thing. Real S3 has no way
|
|
25
|
+
* to add one rule without restating the others.
|
|
26
|
+
*
|
|
27
|
+
* The configuration also answers what its rules have expired. An Object goes
|
|
28
|
+
* once the clock passes the boundary of a rule that selects it, and a Bucket
|
|
29
|
+
* asks on the way to its storage. Nothing sweeps a Bucket on a schedule. See
|
|
30
|
+
* `simS3ObjectExpiryInstant` for why the boundary is a pure function of the
|
|
31
|
+
* current time.
|
|
32
|
+
*/
|
|
33
|
+
export declare class SimS3LifecycleConfiguration {
|
|
34
|
+
private readonly storedRules;
|
|
35
|
+
constructor(properties?: SimS3LifecycleConfigurationProperties);
|
|
36
|
+
/**
|
|
37
|
+
* The configuration a Bucket nobody has configured has.
|
|
38
|
+
*/
|
|
39
|
+
static empty(): SimS3LifecycleConfiguration;
|
|
40
|
+
/**
|
|
41
|
+
* The configuration a PutBucketLifecycleConfiguration request asks for.
|
|
42
|
+
*/
|
|
43
|
+
static fromConfiguration(configuration: SimS3LifecycleConfigurationInput): SimS3LifecycleConfiguration;
|
|
44
|
+
/**
|
|
45
|
+
* The rules this Bucket carries.
|
|
46
|
+
*
|
|
47
|
+
* Cloned on the way out as they were on the way in. A caller holding the
|
|
48
|
+
* objects it put, or the ones a read gave it, could otherwise change what
|
|
49
|
+
* the Bucket is configured with by mutating them.
|
|
50
|
+
*/
|
|
51
|
+
get rules(): readonly SimS3LifecycleRule[];
|
|
52
|
+
/**
|
|
53
|
+
* Whether the Bucket carries any rule at all.
|
|
54
|
+
*
|
|
55
|
+
* Real S3 distinguishes a Bucket with no configuration from one with an
|
|
56
|
+
* empty list of rules only in that it refuses to store the latter, so an
|
|
57
|
+
* unconfigured Bucket and a Bucket whose rules were all removed read alike.
|
|
58
|
+
*/
|
|
59
|
+
get isEmpty(): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Whether an enabled rule has expired an Object by the given instant.
|
|
62
|
+
*
|
|
63
|
+
* One rule is enough. Real S3 applies the shortest expiry among the rules
|
|
64
|
+
* selecting a key, and an Object past any of the boundaries is past the
|
|
65
|
+
* shortest one.
|
|
66
|
+
*/
|
|
67
|
+
expires(object: SimS3LifecycleObject, now: Date): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Whether an enabled rule has abandoned a multipart upload by the given
|
|
70
|
+
* instant.
|
|
71
|
+
*/
|
|
72
|
+
abandons(upload: SimS3LifecycleUpload, now: Date): boolean;
|
|
73
|
+
/**
|
|
74
|
+
* The rules that act, which are the ones whose `Status` is `Enabled`.
|
|
75
|
+
*
|
|
76
|
+
* Read from the stored rules rather than from `rules`, because every read of
|
|
77
|
+
* a Bucket asks and cloning the whole configuration each time would be the
|
|
78
|
+
* cost of having one.
|
|
79
|
+
*/
|
|
80
|
+
private enabledRules;
|
|
81
|
+
}
|
|
82
|
+
export {};
|
|
83
|
+
//# sourceMappingURL=sim-s3-lifecycle-configuration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-lifecycle-configuration.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,IAAI,gCAAgC,EAC/D,kBAAkB,EACnB,MAAM,gGAAgG,CAAC;AAQxG,UAAU,qCAAqC;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAE5D,YAAY,UAAU,GAAE,qCAA0C,EAEjE;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,IAAI,2BAA2B,CAE1C;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,aAAa,EAAE,gCAAgC,GAC9C,2BAA2B,CAI7B;IAED;;;;;;OAMG;IACH,IAAI,KAAK,IAAI,SAAS,kBAAkB,EAAE,CAEzC;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,IAAI,GAAG,OAAO,CAUxD;IAED;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,IAAI,GAAG,OAAO,CAazD;IAED;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;CAGrB"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { simS3LifecycleReached, simS3ObjectExpiryInstant, simS3UploadAbortInstant, } from "./sim-s3-lifecycle-expiry.js";
|
|
2
|
+
import { simS3LifecycleRuleSelects } from "./sim-s3-lifecycle-selection.js";
|
|
3
|
+
/**
|
|
4
|
+
* The lifecycle configuration of one simulated S3 Bucket.
|
|
5
|
+
*
|
|
6
|
+
* A Bucket has one configuration rather than a list of them, which is why
|
|
7
|
+
* PutBucketLifecycleConfiguration replaces the whole thing. Real S3 has no way
|
|
8
|
+
* to add one rule without restating the others.
|
|
9
|
+
*
|
|
10
|
+
* The configuration also answers what its rules have expired. An Object goes
|
|
11
|
+
* once the clock passes the boundary of a rule that selects it, and a Bucket
|
|
12
|
+
* asks on the way to its storage. Nothing sweeps a Bucket on a schedule. See
|
|
13
|
+
* `simS3ObjectExpiryInstant` for why the boundary is a pure function of the
|
|
14
|
+
* current time.
|
|
15
|
+
*/
|
|
16
|
+
export class SimS3LifecycleConfiguration {
|
|
17
|
+
storedRules;
|
|
18
|
+
constructor(properties = {}) {
|
|
19
|
+
this.storedRules = structuredClone(properties.rules ?? []);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The configuration a Bucket nobody has configured has.
|
|
23
|
+
*/
|
|
24
|
+
static empty() {
|
|
25
|
+
return new SimS3LifecycleConfiguration();
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The configuration a PutBucketLifecycleConfiguration request asks for.
|
|
29
|
+
*/
|
|
30
|
+
static fromConfiguration(configuration) {
|
|
31
|
+
return new SimS3LifecycleConfiguration({
|
|
32
|
+
rules: [...(configuration.Rules ?? [])],
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* The rules this Bucket carries.
|
|
37
|
+
*
|
|
38
|
+
* Cloned on the way out as they were on the way in. A caller holding the
|
|
39
|
+
* objects it put, or the ones a read gave it, could otherwise change what
|
|
40
|
+
* the Bucket is configured with by mutating them.
|
|
41
|
+
*/
|
|
42
|
+
get rules() {
|
|
43
|
+
return structuredClone(this.storedRules);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Whether the Bucket carries any rule at all.
|
|
47
|
+
*
|
|
48
|
+
* Real S3 distinguishes a Bucket with no configuration from one with an
|
|
49
|
+
* empty list of rules only in that it refuses to store the latter, so an
|
|
50
|
+
* unconfigured Bucket and a Bucket whose rules were all removed read alike.
|
|
51
|
+
*/
|
|
52
|
+
get isEmpty() {
|
|
53
|
+
return this.storedRules.length === 0;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Whether an enabled rule has expired an Object by the given instant.
|
|
57
|
+
*
|
|
58
|
+
* One rule is enough. Real S3 applies the shortest expiry among the rules
|
|
59
|
+
* selecting a key, and an Object past any of the boundaries is past the
|
|
60
|
+
* shortest one.
|
|
61
|
+
*/
|
|
62
|
+
expires(object, now) {
|
|
63
|
+
return this.enabledRules().some((rule) => rule.Expiration !== undefined &&
|
|
64
|
+
simS3LifecycleRuleSelects(rule, object) &&
|
|
65
|
+
simS3LifecycleReached(simS3ObjectExpiryInstant(rule.Expiration, object.lastModified), now));
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Whether an enabled rule has abandoned a multipart upload by the given
|
|
69
|
+
* instant.
|
|
70
|
+
*/
|
|
71
|
+
abandons(upload, now) {
|
|
72
|
+
return this.enabledRules().some((rule) => rule.AbortIncompleteMultipartUpload !== undefined &&
|
|
73
|
+
simS3LifecycleRuleSelects(rule, { key: upload.key }) &&
|
|
74
|
+
simS3LifecycleReached(simS3UploadAbortInstant(rule.AbortIncompleteMultipartUpload, upload.initiated), now));
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* The rules that act, which are the ones whose `Status` is `Enabled`.
|
|
78
|
+
*
|
|
79
|
+
* Read from the stored rules rather than from `rules`, because every read of
|
|
80
|
+
* a Bucket asks and cloning the whole configuration each time would be the
|
|
81
|
+
* cost of having one.
|
|
82
|
+
*/
|
|
83
|
+
enabledRules() {
|
|
84
|
+
return this.storedRules.filter((rule) => rule.Status === "Enabled");
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=sim-s3-lifecycle-configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-lifecycle-configuration.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAuB5E;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,2BAA2B;IACrB,WAAW,CAAgC;IAE5D,YAAY,UAAU,GAA0C,EAAE;QAChE,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK;QACV,OAAO,IAAI,2BAA2B,EAAE,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,aAA+C;QAE/C,OAAO,IAAI,2BAA2B,CAAC;YACrC,KAAK,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;SACxC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,IAAI,KAAK;QACP,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,MAA4B,EAAE,GAAS;QAC7C,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAC7B,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,UAAU,KAAK,SAAS;YAC7B,yBAAyB,CAAC,IAAI,EAAE,MAAM,CAAC;YACvC,qBAAqB,CACnB,wBAAwB,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,EAC9D,GAAG,CACJ,CACJ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,MAA4B,EAAE,GAAS;QAC9C,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAC7B,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,8BAA8B,KAAK,SAAS;YACjD,yBAAyB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;YACpD,qBAAqB,CACnB,uBAAuB,CACrB,IAAI,CAAC,8BAA8B,EACnC,MAAM,CAAC,SAAS,CACjB,EACD,GAAG,CACJ,CACJ,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,YAAY;QAClB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IACtE,CAAC;CACF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SimS3LifecycleAbortIncompleteMultipartUpload, SimS3LifecycleExpiration } from "../../command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.js";
|
|
2
|
+
/**
|
|
3
|
+
* The instant an `Expiration` puts an Object written at a given time past.
|
|
4
|
+
*
|
|
5
|
+
* Simulated S3 expires an Object the moment the boundary arrives. Real S3
|
|
6
|
+
* removes one some time after it and bills up to the removal, which a test
|
|
7
|
+
* would have to wait out. Exactly on the boundary is the answer a test can
|
|
8
|
+
* use.
|
|
9
|
+
*
|
|
10
|
+
* `Days` wins over `Date` when a rule carries both, though real S3 refuses to
|
|
11
|
+
* store such a rule. An `Expiration` carrying only `ExpiredObjectDeleteMarker`
|
|
12
|
+
* has no boundary at all, since Object versions are left out.
|
|
13
|
+
*/
|
|
14
|
+
export declare function simS3ObjectExpiryInstant(expiration: SimS3LifecycleExpiration, writtenAt: Date): Date | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* The instant an `AbortIncompleteMultipartUpload` abandons an upload started
|
|
17
|
+
* at a given time.
|
|
18
|
+
*/
|
|
19
|
+
export declare function simS3UploadAbortInstant(abort: SimS3LifecycleAbortIncompleteMultipartUpload, initiated: Date): Date | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Whether simulated time has reached a boundary.
|
|
22
|
+
*/
|
|
23
|
+
export declare function simS3LifecycleReached(boundary: Date | undefined, now: Date): boolean;
|
|
24
|
+
//# sourceMappingURL=sim-s3-lifecycle-expiry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-lifecycle-expiry.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4CAA4C,EAC5C,wBAAwB,EACzB,MAAM,gGAAgG,CAAC;AAIxG;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,wBAAwB,EACpC,SAAS,EAAE,IAAI,GACd,IAAI,GAAG,SAAS,CAUlB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4CAA4C,EACnD,SAAS,EAAE,IAAI,GACd,IAAI,GAAG,SAAS,CAMlB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,IAAI,GAAG,SAAS,EAC1B,GAAG,EAAE,IAAI,GACR,OAAO,CAET"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const millisecondsPerDay = 24 * 60 * 60 * 1000;
|
|
2
|
+
/**
|
|
3
|
+
* The instant an `Expiration` puts an Object written at a given time past.
|
|
4
|
+
*
|
|
5
|
+
* Simulated S3 expires an Object the moment the boundary arrives. Real S3
|
|
6
|
+
* removes one some time after it and bills up to the removal, which a test
|
|
7
|
+
* would have to wait out. Exactly on the boundary is the answer a test can
|
|
8
|
+
* use.
|
|
9
|
+
*
|
|
10
|
+
* `Days` wins over `Date` when a rule carries both, though real S3 refuses to
|
|
11
|
+
* store such a rule. An `Expiration` carrying only `ExpiredObjectDeleteMarker`
|
|
12
|
+
* has no boundary at all, since Object versions are left out.
|
|
13
|
+
*/
|
|
14
|
+
export function simS3ObjectExpiryInstant(expiration, writtenAt) {
|
|
15
|
+
if (expiration.Days !== undefined) {
|
|
16
|
+
return afterDays(writtenAt, expiration.Days);
|
|
17
|
+
}
|
|
18
|
+
if (expiration.Date !== undefined) {
|
|
19
|
+
return new Date(expiration.Date);
|
|
20
|
+
}
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The instant an `AbortIncompleteMultipartUpload` abandons an upload started
|
|
25
|
+
* at a given time.
|
|
26
|
+
*/
|
|
27
|
+
export function simS3UploadAbortInstant(abort, initiated) {
|
|
28
|
+
if (abort.DaysAfterInitiation === undefined) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
return afterDays(initiated, abort.DaysAfterInitiation);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Whether simulated time has reached a boundary.
|
|
35
|
+
*/
|
|
36
|
+
export function simS3LifecycleReached(boundary, now) {
|
|
37
|
+
return boundary !== undefined && now.getTime() >= boundary.getTime();
|
|
38
|
+
}
|
|
39
|
+
function afterDays(from, days) {
|
|
40
|
+
return new Date(from.getTime() + days * millisecondsPerDay);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=sim-s3-lifecycle-expiry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-lifecycle-expiry.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.ts"],"names":[],"mappings":"AAKA,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE/C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAAoC,EACpC,SAAe;IAEf,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAmD,EACnD,SAAe;IAEf,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAA0B,EAC1B,GAAS;IAET,OAAO,QAAQ,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,SAAS,CAAC,IAAU,EAAE,IAAY;IACzC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,kBAAkB,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SimS3LifecycleRule } from "../../command/put-bucket-lifecycle-configuration/put-bucket-lifecycle-configuration.command.js";
|
|
2
|
+
/**
|
|
3
|
+
* What a lifecycle rule looks at to decide whether it selects something.
|
|
4
|
+
*
|
|
5
|
+
* An Object states its size and a multipart upload leaves it out. Half an
|
|
6
|
+
* upload has no size for a rule to measure, and real S3 has no size to
|
|
7
|
+
* measure either until the parts are joined.
|
|
8
|
+
*/
|
|
9
|
+
export interface SimS3LifecycleSubject {
|
|
10
|
+
readonly key: string;
|
|
11
|
+
readonly size?: number | undefined;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Whether a rule selects the Object or upload a key names.
|
|
15
|
+
*
|
|
16
|
+
* A rule states its scope either as the older top-level `Prefix` or as a
|
|
17
|
+
* `Filter`. A rule with no scope at all covers every key in the Bucket. Real
|
|
18
|
+
* S3 refuses a rule stating both.
|
|
19
|
+
*
|
|
20
|
+
* Simulated S3 has no Object tags. A `Tag` or a `TagFilters` entry names a
|
|
21
|
+
* condition the simulator has no answer for, and selects no key.
|
|
22
|
+
*/
|
|
23
|
+
export declare function simS3LifecycleRuleSelects(rule: SimS3LifecycleRule, subject: SimS3LifecycleSubject): boolean;
|
|
24
|
+
//# sourceMappingURL=sim-s3-lifecycle-selection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-lifecycle-selection.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,gGAAgG,CAAC;AAExG;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAUD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAMT"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a rule selects the Object or upload a key names.
|
|
3
|
+
*
|
|
4
|
+
* A rule states its scope either as the older top-level `Prefix` or as a
|
|
5
|
+
* `Filter`. A rule with no scope at all covers every key in the Bucket. Real
|
|
6
|
+
* S3 refuses a rule stating both.
|
|
7
|
+
*
|
|
8
|
+
* Simulated S3 has no Object tags. A `Tag` or a `TagFilters` entry names a
|
|
9
|
+
* condition the simulator has no answer for, and selects no key.
|
|
10
|
+
*/
|
|
11
|
+
export function simS3LifecycleRuleSelects(rule, subject) {
|
|
12
|
+
if (rule.Filter === undefined) {
|
|
13
|
+
return subject.key.startsWith(rule.Prefix ?? "");
|
|
14
|
+
}
|
|
15
|
+
return filterSelects(rule.Filter, subject);
|
|
16
|
+
}
|
|
17
|
+
function filterSelects(filter, subject) {
|
|
18
|
+
if (filter.And !== undefined) {
|
|
19
|
+
return conjunctionSelects(filter.And, subject);
|
|
20
|
+
}
|
|
21
|
+
if (filter.Tag !== undefined) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
return (subject.key.startsWith(filter.Prefix ?? "") && sizeWithin(filter, subject));
|
|
25
|
+
}
|
|
26
|
+
function conjunctionSelects(operator, subject) {
|
|
27
|
+
if ((operator.Tags ?? []).length > 0) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
return (subject.key.startsWith(operator.Prefix ?? "") &&
|
|
31
|
+
sizeWithin(operator, subject));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Whether the subject's size falls inside the bounds a filter states.
|
|
35
|
+
*
|
|
36
|
+
* A subject with no size, meaning an upload still in progress, falls outside
|
|
37
|
+
* any stated bound. A rule narrowed to Objects of a certain size says nothing
|
|
38
|
+
* about parts on their way to becoming one.
|
|
39
|
+
*/
|
|
40
|
+
function sizeWithin(bounds, subject) {
|
|
41
|
+
const { ObjectSizeGreaterThan: greaterThan, ObjectSizeLessThan: lessThan } = bounds;
|
|
42
|
+
if (greaterThan === undefined && lessThan === undefined) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
if (subject.size === undefined) {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
return ((greaterThan === undefined || subject.size > greaterThan) &&
|
|
49
|
+
(lessThan === undefined || subject.size < lessThan));
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=sim-s3-lifecycle-selection.js.map
|