@kensio/yulin 1.21.0 → 1.21.1
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.js +4 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +3 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +2 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +3 -0
- package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts +7 -0
- package/dist/service/aws/factory/sim-aws-logs-collaborators.js +10 -0
- package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +5 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +3 -0
- package/dist/service/aws/sim-aws-account-region-scope.js +4 -0
- package/dist/service/aws/sim-aws-account.d.ts +3 -0
- package/dist/service/aws/sim-aws-account.js +4 -0
- package/dist/service/aws/sim-aws-region.d.ts +3 -0
- package/dist/service/aws/sim-aws-region.js +4 -0
- package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
- package/dist/service/aws/sim-aws-service-accessors.js +4 -0
- package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.js +12 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.d.ts +12 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.js +31 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.d.ts +15 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.js +38 -0
- package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.js +17 -0
- package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.js +29 -0
- package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.d.ts +11 -0
- package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.js +37 -0
- package/dist/service/backup/cfn/sim-cfn-backup-properties.d.ts +12 -0
- package/dist/service/backup/cfn/sim-cfn-backup-properties.js +37 -0
- package/dist/service/backup/cfn/sim-cfn-backup-property-reader.d.ts +17 -0
- package/dist/service/backup/cfn/sim-cfn-backup-property-reader.js +62 -0
- package/dist/service/backup/cfn/sim-cfn-backup-resource-error.d.ts +7 -0
- package/dist/service/backup/cfn/sim-cfn-backup-resource-error.js +22 -0
- package/dist/service/backup/command/sim-backup-authorizer.d.ts +11 -0
- package/dist/service/backup/command/sim-backup-authorizer.js +24 -0
- package/dist/service/backup/command/sim-backup-command.types.d.ts +238 -0
- package/dist/service/backup/command/sim-backup-command.types.js +1 -0
- package/dist/service/backup/command/sim-backup-configuration-commands.d.ts +32 -0
- package/dist/service/backup/command/sim-backup-configuration-commands.js +138 -0
- package/dist/service/backup/command/sim-backup-job-commands.d.ts +23 -0
- package/dist/service/backup/command/sim-backup-job-commands.js +52 -0
- package/dist/service/backup/command/sim-backup-recovery-point-commands.d.ts +18 -0
- package/dist/service/backup/command/sim-backup-recovery-point-commands.js +38 -0
- package/dist/service/backup/command/sim-backup-request-options.d.ts +4 -0
- package/dist/service/backup/command/sim-backup-request-options.js +1 -0
- package/dist/service/backup/command/sim-backup-required-string.d.ts +2 -0
- package/dist/service/backup/command/sim-backup-required-string.js +8 -0
- package/dist/service/backup/error/sim-backup.error.d.ts +38 -0
- package/dist/service/backup/error/sim-backup.error.js +50 -0
- package/dist/service/backup/index.d.ts +9 -0
- package/dist/service/backup/index.js +7 -0
- package/dist/service/backup/job/sim-backup-job-input.d.ts +11 -0
- package/dist/service/backup/job/sim-backup-job-input.js +1 -0
- package/dist/service/backup/job/sim-backup-job-page.d.ts +22 -0
- package/dist/service/backup/job/sim-backup-job-page.js +54 -0
- package/dist/service/backup/job/sim-backup-job.d.ts +25 -0
- package/dist/service/backup/job/sim-backup-job.factory.d.ts +10 -0
- package/dist/service/backup/job/sim-backup-job.factory.js +24 -0
- package/dist/service/backup/job/sim-backup-job.js +54 -0
- package/dist/service/backup/job/sim-backup-jobs.d.ts +18 -0
- package/dist/service/backup/job/sim-backup-jobs.js +33 -0
- package/dist/service/backup/plan/sim-backup-plan-schedules.d.ts +21 -0
- package/dist/service/backup/plan/sim-backup-plan-schedules.js +66 -0
- package/dist/service/backup/plan/sim-backup-plan.d.ts +22 -0
- package/dist/service/backup/plan/sim-backup-plan.js +37 -0
- package/dist/service/backup/plan/sim-backup-rule.d.ts +9 -0
- package/dist/service/backup/plan/sim-backup-rule.js +71 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.d.ts +28 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.d.ts +9 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.js +23 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.js +62 -0
- package/dist/service/backup/sdk/sim-backup-sdk-command-router.d.ts +9 -0
- package/dist/service/backup/sdk/sim-backup-sdk-command-router.js +37 -0
- package/dist/service/backup/selection/sim-backup-selection.d.ts +22 -0
- package/dist/service/backup/selection/sim-backup-selection.js +43 -0
- package/dist/service/backup/sim-backup-arn.d.ts +7 -0
- package/dist/service/backup/sim-backup-arn.js +12 -0
- package/dist/service/backup/sim-backup-properties.d.ts +8 -0
- package/dist/service/backup/sim-backup-properties.js +1 -0
- package/dist/service/backup/sim-backup-resource-resolver.d.ts +24 -0
- package/dist/service/backup/sim-backup-resource-resolver.js +44 -0
- package/dist/service/backup/sim-backup-store.d.ts +29 -0
- package/dist/service/backup/sim-backup-store.js +80 -0
- package/dist/service/backup/sim-backup.d.ts +48 -0
- package/dist/service/backup/sim-backup.js +139 -0
- package/dist/service/backup/vault/sim-backup-vault-description.d.ts +12 -0
- package/dist/service/backup/vault/sim-backup-vault-description.js +15 -0
- package/dist/service/backup/vault/sim-backup-vault-lock-configuration.d.ts +5 -0
- package/dist/service/backup/vault/sim-backup-vault-lock-configuration.js +31 -0
- package/dist/service/backup/vault/sim-backup-vault-lock.d.ts +15 -0
- package/dist/service/backup/vault/sim-backup-vault-lock.js +23 -0
- package/dist/service/backup/vault/sim-backup-vault-recovery-points.d.ts +12 -0
- package/dist/service/backup/vault/sim-backup-vault-recovery-points.js +30 -0
- package/dist/service/backup/vault/sim-backup-vault-retention.d.ts +4 -0
- package/dist/service/backup/vault/sim-backup-vault-retention.js +20 -0
- package/dist/service/backup/vault/sim-backup-vault.d.ts +33 -0
- package/dist/service/backup/vault/sim-backup-vault.js +49 -0
- package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.d.ts +3 -0
- package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.js +66 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +6 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.d.ts +23 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.js +22 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js +2 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.d.ts +49 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.js +61 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.d.ts +51 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.js +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
- package/dist/service/cloudwatch/index.d.ts +1 -0
- package/dist/service/cloudwatch/index.js +1 -0
- package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +2 -0
- package/dist/service/cloudwatch/sim-cloudwatch-commands.js +6 -0
- package/dist/service/cloudwatch/sim-cloudwatch.d.ts +9 -0
- package/dist/service/cloudwatch/sim-cloudwatch.js +10 -0
- package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.d.ts +58 -0
- package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.js +53 -0
- package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.js +8 -2
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js +4 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts +11 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js +13 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.js +16 -4
- package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.d.ts +7 -0
- package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.js +11 -1
- package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.js +8 -2
- package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +19 -0
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +3 -2
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts +8 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +11 -3
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js +13 -2
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +7 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +18 -7
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.d.ts +20 -3
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.js +19 -3
- package/dist/service/cognito/command/hosted/sim-cognito-token-endpoint.d.ts +2 -0
- package/dist/service/cognito/command/hosted/sim-cognito-token-grants.d.ts +8 -0
- package/dist/service/cognito/command/hosted/sim-cognito-token-grants.js +13 -4
- package/dist/service/cognito/command/sim-cognito-commands.d.ts +5 -0
- package/dist/service/cognito/command/sim-cognito-commands.js +22 -2
- package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.d.ts +74 -0
- package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.js +110 -0
- package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.d.ts +5 -49
- package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js +7 -87
- package/dist/service/cognito/command/user/sim-cognito-user-commands.d.ts +4 -0
- package/dist/service/cognito/command/user/sim-cognito-user-commands.js +38 -29
- package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +23 -0
- package/dist/service/cognito/error/sim-cognito-managed-login.error.js +36 -0
- package/dist/service/cognito/error/sim-cognito-throttle.error.d.ts +13 -0
- package/dist/service/cognito/error/sim-cognito-throttle.error.js +15 -0
- package/dist/service/cognito/index.d.ts +2 -0
- package/dist/service/cognito/index.js +2 -0
- package/dist/service/cognito/metric/sim-cognito-counted-request.d.ts +50 -0
- package/dist/service/cognito/metric/sim-cognito-counted-request.js +51 -0
- package/dist/service/cognito/metric/sim-cognito-metrics.d.ts +22 -0
- package/dist/service/cognito/metric/sim-cognito-metrics.js +26 -0
- package/dist/service/cognito/metric/sim-cognito-pool-metrics.d.ts +40 -0
- package/dist/service/cognito/metric/sim-cognito-pool-metrics.js +51 -0
- package/dist/service/cognito/metric/sim-cognito-throttled-request.d.ts +11 -0
- package/dist/service/cognito/metric/sim-cognito-throttled-request.js +15 -0
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +6 -1
- package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts +4 -1
- package/dist/service/cognito/serve/page/sim-cognito-page-markup.js +6 -2
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.d.ts +35 -0
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +50 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +6 -0
- package/dist/service/cognito/sim-cognito-identity-provider.js +1 -0
- package/dist/service/cognito/sim-cognito-user-directory.js +3 -3
- package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.d.ts +9 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.js +2 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts +8 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js +8 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.d.ts +36 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.js +45 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.d.ts +42 -9
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.js +56 -27
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.d.ts +52 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.js +49 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +48 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +94 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.d.ts +13 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.js +19 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.d.ts +7 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.js +9 -0
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.d.ts +3 -2
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.js +3 -2
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts +18 -1
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js +35 -18
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +4 -1
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +7 -11
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +7 -8
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.d.ts +11 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.js +31 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.d.ts +10 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.js +12 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts +3 -0
- package/dist/service/lambda/function/sim-lambda-function.js +6 -2
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +7 -0
- package/dist/service/lambda/metric/sim-lambda-function-metrics.d.ts +47 -0
- package/dist/service/lambda/metric/sim-lambda-function-metrics.js +83 -0
- package/dist/service/lambda/metric/sim-lambda-iterator-age.d.ts +29 -0
- package/dist/service/lambda/metric/sim-lambda-iterator-age.js +41 -0
- package/dist/service/lambda/metric/sim-lambda-metrics.d.ts +12 -0
- package/dist/service/lambda/metric/sim-lambda-metrics.js +13 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +2 -0
- package/dist/service/lambda/sim-lambda-commands.js +2 -1
- package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.d.ts +9 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.js +25 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.d.ts +30 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.js +52 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.d.ts +40 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.js +66 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.d.ts +19 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.js +40 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.d.ts +5 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.js +23 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.d.ts +25 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.js +58 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.d.ts +6 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.js +19 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +5 -3
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +12 -3
- package/dist/service/logs/command/event/sim-logs-put-log-events.d.ts +3 -0
- package/dist/service/logs/command/event/sim-logs-put-log-events.js +3 -0
- package/dist/service/logs/command/group/sim-logs-log-group-commands.js +3 -3
- package/dist/service/logs/command/metric/metric-filter.command.d.ts +79 -0
- package/dist/service/logs/command/metric/metric-filter.command.js +1 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.d.ts +48 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.js +95 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-input.d.ts +11 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-input.js +79 -0
- package/dist/service/logs/command/sim-logs-command.types.d.ts +1 -0
- package/dist/service/logs/group/sim-logs-log-group.d.ts +6 -0
- package/dist/service/logs/group/sim-logs-log-group.js +6 -0
- package/dist/service/logs/index.d.ts +6 -0
- package/dist/service/logs/index.js +4 -0
- package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.d.ts +40 -0
- package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.js +78 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.d.ts +25 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.js +81 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.d.ts +57 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.js +85 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.d.ts +24 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.js +41 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.d.ts +20 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.js +39 -0
- package/dist/service/logs/metric/sim-logs-metric-datapoint.d.ts +25 -0
- package/dist/service/logs/metric/sim-logs-metric-datapoint.js +1 -0
- package/dist/service/logs/metric/sim-logs-metric-fan-out.d.ts +62 -0
- package/dist/service/logs/metric/sim-logs-metric-fan-out.js +116 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-selection.d.ts +17 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-selection.js +17 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-store.d.ts +35 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-store.js +47 -0
- package/dist/service/logs/metric/sim-logs-metric-filter.d.ts +49 -0
- package/dist/service/logs/metric/sim-logs-metric-filter.js +95 -0
- package/dist/service/logs/metric/sim-logs-metric-publication-failure.d.ts +31 -0
- package/dist/service/logs/metric/sim-logs-metric-publication-failure.js +12 -0
- package/dist/service/logs/metric/sim-logs-metric-publications.d.ts +11 -0
- package/dist/service/logs/metric/sim-logs-metric-publications.js +1 -0
- package/dist/service/logs/metric/sim-logs-metric-transformation.d.ts +45 -0
- package/dist/service/logs/metric/sim-logs-metric-transformation.js +127 -0
- package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +12 -0
- package/dist/service/logs/sim-logs-commands.d.ts +12 -0
- package/dist/service/logs/sim-logs-commands.js +17 -0
- package/dist/service/logs/sim-logs-metric-operations.d.ts +31 -0
- package/dist/service/logs/sim-logs-metric-operations.js +37 -0
- package/dist/service/logs/sim-logs.d.ts +4 -3
- package/dist/service/logs/sim-logs.js +4 -3
- package/dist/service/logs/write/sim-logs-service-writer.d.ts +3 -0
- package/dist/service/logs/write/sim-logs-service-writer.js +5 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +32 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +31 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +13 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +18 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +17 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +27 -3
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +45 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +90 -0
- package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.d.ts +42 -0
- package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.js +59 -0
- package/dist/service/s3/bucket/lock/sim-s3-default-retention.d.ts +8 -0
- package/dist/service/s3/bucket/lock/sim-s3-default-retention.js +15 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.d.ts +49 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.js +102 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.d.ts +14 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.js +1 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock.d.ts +62 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock.js +100 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-retention.d.ts +55 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-retention.js +82 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +9 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +1 -2
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +114 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +148 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +30 -29
- package/dist/service/s3/bucket/sim-s3-bucket.js +42 -45
- package/dist/service/s3/bucket/sim-s3-object-deletion.d.ts +30 -0
- package/dist/service/s3/bucket/sim-s3-object-deletion.js +29 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.d.ts +61 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.js +65 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.d.ts +97 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.js +176 -0
- package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.d.ts +10 -0
- package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.js +16 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +85 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +101 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-versions.d.ts +52 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-versions.js +91 -0
- package/dist/service/s3/bucket/versioning/sim-s3-version-page.d.ts +32 -0
- package/dist/service/s3/bucket/versioning/sim-s3-version-page.js +45 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts +0 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +3 -14
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +18 -1
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +34 -1
- package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.d.ts +37 -0
- package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.js +78 -0
- package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.d.ts +20 -0
- package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.js +107 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +14 -7
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +29 -37
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +62 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +89 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +9 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +16 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts +9 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js +17 -6
- package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.d.ts +19 -0
- package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.js +28 -0
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +24 -0
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +30 -0
- package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.command.d.ts +2 -0
- package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.handler.js +3 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +3 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +3 -1
- package/dist/service/s3/command/delete-object/delete-object-version-removal.d.ts +50 -0
- package/dist/service/s3/command/delete-object/delete-object-version-removal.js +52 -0
- package/dist/service/s3/command/delete-object/delete-object.command.d.ts +19 -2
- package/dist/service/s3/command/delete-object/delete-object.handler.d.ts +7 -1
- package/dist/service/s3/command/delete-object/delete-object.handler.js +28 -16
- package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.d.ts +24 -0
- package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.js +32 -0
- package/dist/service/s3/command/delete-objects/delete-object-attempt.d.ts +6 -2
- package/dist/service/s3/command/delete-objects/delete-object-attempt.js +6 -2
- package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js +10 -9
- package/dist/service/s3/command/delete-objects/delete-objects-outcome.js +9 -1
- package/dist/service/s3/command/delete-objects/delete-objects.command.d.ts +6 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.d.ts +23 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.js +1 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.js +40 -0
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +3 -2
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +9 -1
- package/dist/service/s3/command/get-object/get-object.handler.js +1 -1
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.d.ts +25 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.js +1 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.d.ts +31 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.js +41 -0
- package/dist/service/s3/command/head-object/head-object-loader.d.ts +1 -1
- package/dist/service/s3/command/head-object/head-object-loader.js +7 -3
- package/dist/service/s3/command/head-object/head-object.command.d.ts +9 -1
- package/dist/service/s3/command/head-object/head-object.handler.js +1 -1
- package/dist/service/s3/command/list-object-versions/list-object-versions-listing.d.ts +31 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-listing.js +55 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.d.ts +17 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +34 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.command.d.ts +59 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.command.js +1 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.handler.d.ts +34 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.handler.js +62 -0
- package/dist/service/s3/command/object/sim-s3-read-object-version.d.ts +34 -0
- package/dist/service/s3/command/object/sim-s3-read-object-version.js +52 -0
- package/dist/service/s3/command/object-lock/sim-s3-locked-version.d.ts +11 -0
- package/dist/service/s3/command/object-lock/sim-s3-locked-version.js +27 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.d.ts +42 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.js +66 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.d.ts +30 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.js +41 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.js +1 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.js +44 -0
- package/dist/service/s3/command/put-object/put-object.command.d.ts +3 -0
- package/dist/service/s3/command/put-object/put-object.handler.js +10 -10
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.d.ts +24 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.js +1 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.d.ts +32 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.js +41 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.d.ts +21 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.js +1 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.d.ts +32 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.js +47 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.command.d.ts +29 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.command.js +1 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.handler.d.ts +31 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.handler.js +42 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +7 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.d.ts +35 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.js +57 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-commands.d.ts +26 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-commands.js +34 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.d.ts +13 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.js +28 -0
- package/dist/service/s3/error/sim-s3-object-lock.error.d.ts +22 -0
- package/dist/service/s3/error/sim-s3-object-lock.error.js +26 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -0
- package/dist/service/s3/error/sim-s3.error.js +26 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.js +3 -0
- package/dist/service/s3/notification/event/sim-s3-event.type.d.ts +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +15 -0
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +4 -1
- package/dist/service/s3/notification/event/sim-s3-object-event.d.ts +6 -0
- package/dist/service/s3/notification/event/sim-s3-object-event.js +2 -0
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +1 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +2 -2
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.d.ts +10 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +84 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +6 -132
- package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.d.ts +10 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.js +28 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-routes.d.ts +7 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-routes.js +80 -0
- package/dist/service/s3/sim-s3-commands.d.ts +4 -0
- package/dist/service/s3/sim-s3-commands.js +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts +5 -5
- package/dist/service/s3/sim-s3-operations.js +5 -6
- package/dist/service/s3/sim-s3-version-operations.d.ts +32 -0
- package/dist/service/s3/sim-s3-version-operations.js +45 -0
- package/dist/service/scheduler/command/schedule/schedule.command.d.ts +9 -2
- package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js +2 -0
- package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js +0 -6
- package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -1
- package/dist/service/scheduler/command/sim-scheduler-commands.js +1 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.d.ts +17 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.js +29 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts +6 -1
- package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +9 -0
- package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.d.ts +18 -0
- package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.js +62 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.d.ts +29 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.js +81 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +9 -5
- package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts +11 -0
- package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts +5 -1
- package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js +8 -0
- package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts +4 -1
- package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js +20 -15
- package/dist/service/scheduler/index.d.ts +1 -1
- package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.d.ts +15 -0
- package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.js +24 -0
- package/dist/service/scheduler/target/sim-scheduler-retry-policy.d.ts +20 -0
- package/dist/service/scheduler/target/sim-scheduler-retry-policy.js +37 -0
- package/dist/service/scheduler/target/sim-scheduler-target.d.ts +6 -0
- package/dist/service/scheduler/target/sim-scheduler-target.js +12 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.d.ts +15 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.js +33 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +16 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +33 -1
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts +12 -6
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js +18 -13
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +9 -1
- package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +4 -3
- package/dist/terraform/map/sim-tf-map-sqs-redrive.js +4 -3
- package/docs/README.md +1 -0
- package/docs/services/backup/README.md +553 -0
- package/docs/services/cloudformation/README.md +16 -6
- package/docs/services/cloudwatch/README.md +159 -3
- package/docs/services/cognito/README.md +370 -7
- package/docs/services/lambda/README.md +28 -0
- package/docs/services/logs/README.md +284 -3
- package/docs/services/s3/README.md +463 -20
- package/docs/services/scheduler/README.md +48 -9
- package/docs/services/sqs/README.md +47 -10
- package/llms.txt +1 -0
- package/package.json +7 -2
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { BackgroundTasks, } from "../../util/background/background.js";
|
|
2
|
+
import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
|
|
3
|
+
import { simIamInRegion } from "../iam/authorize/sim-iam-region-auth-z.js";
|
|
4
|
+
import { SimBackupConfigurationCommands } from "./command/sim-backup-configuration-commands.js";
|
|
5
|
+
import { SimBackupAuthorizer } from "./command/sim-backup-authorizer.js";
|
|
6
|
+
import { SimBackupJobCommands } from "./command/sim-backup-job-commands.js";
|
|
7
|
+
import { SimBackupRecoveryPointCommands } from "./command/sim-backup-recovery-point-commands.js";
|
|
8
|
+
import { SimBackupPlanSchedules } from "./plan/sim-backup-plan-schedules.js";
|
|
9
|
+
import { SimBackupResourceResolver } from "./sim-backup-resource-resolver.js";
|
|
10
|
+
import { SimBackupStore } from "./sim-backup-store.js";
|
|
11
|
+
import { SimBackupJobs } from "./job/sim-backup-jobs.js";
|
|
12
|
+
import { SimBackupSdkCommandRouter } from "./sdk/sim-backup-sdk-command-router.js";
|
|
13
|
+
import { SimBackupCfnResourceFactory } from "./cfn/sim-backup-cfn-resource-factory.js";
|
|
14
|
+
/** Simulates AWS Backup resources in one account and Region. */
|
|
15
|
+
export class SimBackup {
|
|
16
|
+
store = new SimBackupStore();
|
|
17
|
+
scope;
|
|
18
|
+
background;
|
|
19
|
+
authorizer;
|
|
20
|
+
resolver;
|
|
21
|
+
jobs;
|
|
22
|
+
schedules;
|
|
23
|
+
jobCommands;
|
|
24
|
+
recoveryPointCommands;
|
|
25
|
+
configurationCommands;
|
|
26
|
+
sdkRouter = new SimBackupSdkCommandRouter(this);
|
|
27
|
+
cfnFactory = new SimBackupCfnResourceFactory({
|
|
28
|
+
backup: this,
|
|
29
|
+
});
|
|
30
|
+
constructor(properties = {}) {
|
|
31
|
+
this.scope =
|
|
32
|
+
properties.accountRegionScope ?? simAwsAccountRegionScopeFactory.make();
|
|
33
|
+
this.background = properties.background ?? new BackgroundTasks();
|
|
34
|
+
this.authorizer = new SimBackupAuthorizer(simIamInRegion(properties.iam, this.scope.regionName));
|
|
35
|
+
this.resolver = new SimBackupResourceResolver({
|
|
36
|
+
scope: this.scope,
|
|
37
|
+
authorizer: this.authorizer,
|
|
38
|
+
store: this.store,
|
|
39
|
+
});
|
|
40
|
+
this.jobs = new SimBackupJobs({ scope: this.scope, store: this.store });
|
|
41
|
+
this.schedules = new SimBackupPlanSchedules({
|
|
42
|
+
store: this.store,
|
|
43
|
+
jobs: this.jobs,
|
|
44
|
+
background: this.background,
|
|
45
|
+
});
|
|
46
|
+
this.jobCommands = new SimBackupJobCommands({
|
|
47
|
+
background: this.background,
|
|
48
|
+
authorizer: this.authorizer,
|
|
49
|
+
resolver: this.resolver,
|
|
50
|
+
store: this.store,
|
|
51
|
+
jobs: this.jobs,
|
|
52
|
+
});
|
|
53
|
+
this.recoveryPointCommands = new SimBackupRecoveryPointCommands({
|
|
54
|
+
background: this.background,
|
|
55
|
+
authorizer: this.authorizer,
|
|
56
|
+
resolver: this.resolver,
|
|
57
|
+
});
|
|
58
|
+
this.configurationCommands = new SimBackupConfigurationCommands({
|
|
59
|
+
scope: this.scope,
|
|
60
|
+
background: this.background,
|
|
61
|
+
authorizer: this.authorizer,
|
|
62
|
+
resolver: this.resolver,
|
|
63
|
+
store: this.store,
|
|
64
|
+
schedules: this.schedules,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
async createBackupVault(command, options) {
|
|
68
|
+
return await this.configurationCommands.createBackupVault(command, options);
|
|
69
|
+
}
|
|
70
|
+
async describeBackupVault(command, options) {
|
|
71
|
+
return await this.configurationCommands.describeBackupVault(command, options);
|
|
72
|
+
}
|
|
73
|
+
async deleteBackupVault(command, options) {
|
|
74
|
+
return await this.configurationCommands.deleteBackupVault(command, options);
|
|
75
|
+
}
|
|
76
|
+
async listBackupVaults(_command, options) {
|
|
77
|
+
return await this.configurationCommands.listBackupVaults(_command, options);
|
|
78
|
+
}
|
|
79
|
+
async putBackupVaultLockConfiguration(command, options) {
|
|
80
|
+
return await this.configurationCommands.putBackupVaultLockConfiguration(command, options);
|
|
81
|
+
}
|
|
82
|
+
async createBackupPlan(command, options) {
|
|
83
|
+
return await this.configurationCommands.createBackupPlan(command, options);
|
|
84
|
+
}
|
|
85
|
+
async getBackupPlan(command, options) {
|
|
86
|
+
return await this.configurationCommands.getBackupPlan(command, options);
|
|
87
|
+
}
|
|
88
|
+
async createBackupSelection(command, options) {
|
|
89
|
+
return await this.configurationCommands.createBackupSelection(command, options);
|
|
90
|
+
}
|
|
91
|
+
async getBackupSelection(command, options) {
|
|
92
|
+
return await this.configurationCommands.getBackupSelection(command, options);
|
|
93
|
+
}
|
|
94
|
+
async listBackupSelections(command, options) {
|
|
95
|
+
return await this.configurationCommands.listBackupSelections(command, options);
|
|
96
|
+
}
|
|
97
|
+
async startBackupJob(command, options) {
|
|
98
|
+
return await this.jobCommands.start(command, options);
|
|
99
|
+
}
|
|
100
|
+
async describeBackupJob(command, options) {
|
|
101
|
+
return await this.jobCommands.describe(command, options);
|
|
102
|
+
}
|
|
103
|
+
async listBackupJobs(command, options) {
|
|
104
|
+
return await this.jobCommands.list(command, options);
|
|
105
|
+
}
|
|
106
|
+
async listRecoveryPointsByBackupVault(command, options) {
|
|
107
|
+
return await this.recoveryPointCommands.list(command, options);
|
|
108
|
+
}
|
|
109
|
+
async describeRecoveryPoint(command, options) {
|
|
110
|
+
return await this.recoveryPointCommands.describe(command, options);
|
|
111
|
+
}
|
|
112
|
+
vault(name) {
|
|
113
|
+
return this.resolver.requireVault(name);
|
|
114
|
+
}
|
|
115
|
+
findBackupVault(name) {
|
|
116
|
+
return this.store.vault(name);
|
|
117
|
+
}
|
|
118
|
+
findBackupPlan(id) {
|
|
119
|
+
return this.store.plan(id);
|
|
120
|
+
}
|
|
121
|
+
findBackupSelection(id) {
|
|
122
|
+
return this.store.selection(id);
|
|
123
|
+
}
|
|
124
|
+
removeBackupVault(name) {
|
|
125
|
+
this.store.removeVault(name);
|
|
126
|
+
}
|
|
127
|
+
removeBackupPlan(id) {
|
|
128
|
+
this.store.removePlan(id);
|
|
129
|
+
}
|
|
130
|
+
removeBackupSelection(id) {
|
|
131
|
+
this.store.removeSelection(id);
|
|
132
|
+
}
|
|
133
|
+
sdkCommandRouter() {
|
|
134
|
+
return this.sdkRouter;
|
|
135
|
+
}
|
|
136
|
+
cfnResourceFactory() {
|
|
137
|
+
return this.cfnFactory;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SimDescribeBackupVaultCommandOutput } from "../command/sim-backup-command.types.js";
|
|
2
|
+
import type { SimBackupVaultLockConfiguration } from "./sim-backup-vault-lock.js";
|
|
3
|
+
interface SimBackupVaultDescriptionSource {
|
|
4
|
+
readonly name: string;
|
|
5
|
+
readonly arn: string;
|
|
6
|
+
readonly creationDate: Date;
|
|
7
|
+
readonly encryptionKeyArn?: string | undefined;
|
|
8
|
+
readonly creatorRequestId?: string | undefined;
|
|
9
|
+
}
|
|
10
|
+
/** Builds the SDK description of one backup vault. */
|
|
11
|
+
export declare function describeBackupVault(vault: SimBackupVaultDescriptionSource, lock: SimBackupVaultLockConfiguration | undefined, lockDate: Date | undefined, recoveryPointCount: number): SimDescribeBackupVaultCommandOutput;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Builds the SDK description of one backup vault. */
|
|
2
|
+
export function describeBackupVault(vault, lock, lockDate, recoveryPointCount) {
|
|
3
|
+
return {
|
|
4
|
+
BackupVaultName: vault.name,
|
|
5
|
+
BackupVaultArn: vault.arn,
|
|
6
|
+
EncryptionKeyArn: vault.encryptionKeyArn,
|
|
7
|
+
CreationDate: new Date(vault.creationDate),
|
|
8
|
+
CreatorRequestId: vault.creatorRequestId,
|
|
9
|
+
NumberOfRecoveryPoints: recoveryPointCount,
|
|
10
|
+
Locked: lock !== undefined,
|
|
11
|
+
MinRetentionDays: lock?.MinRetentionDays,
|
|
12
|
+
MaxRetentionDays: lock?.MaxRetentionDays,
|
|
13
|
+
LockDate: lockDate === undefined ? undefined : new Date(lockDate),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { SimBackupVaultLockConfiguration } from "./sim-backup-vault-lock.js";
|
|
2
|
+
/** Calculates when a Vault Lock grace period ends. */
|
|
3
|
+
export declare function backupVaultLockDate(changeableForDays: number | undefined, now: Date): Date | undefined;
|
|
4
|
+
/** Validates a Vault Lock configuration before storage. */
|
|
5
|
+
export declare function validateBackupVaultLockConfiguration(configuration: SimBackupVaultLockConfiguration): void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { SimBackupInvalidParameterValueException } from "../error/sim-backup.error.js";
|
|
2
|
+
const millisecondsPerDay = 24 * 60 * 60 * 1000;
|
|
3
|
+
/** Calculates when a Vault Lock grace period ends. */
|
|
4
|
+
export function backupVaultLockDate(changeableForDays, now) {
|
|
5
|
+
if (changeableForDays === undefined) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
return new Date(now.getTime() + changeableForDays * millisecondsPerDay);
|
|
9
|
+
}
|
|
10
|
+
/** Validates a Vault Lock configuration before storage. */
|
|
11
|
+
export function validateBackupVaultLockConfiguration(configuration) {
|
|
12
|
+
const { MinRetentionDays: minimum, MaxRetentionDays: maximum } = configuration;
|
|
13
|
+
if (minimum !== undefined &&
|
|
14
|
+
(!Number.isSafeInteger(minimum) || minimum < 1)) {
|
|
15
|
+
throw new SimBackupInvalidParameterValueException("MinRetentionDays must be a positive whole number");
|
|
16
|
+
}
|
|
17
|
+
if (maximum !== undefined &&
|
|
18
|
+
(!Number.isSafeInteger(maximum) || maximum < 1 || maximum > 36_500)) {
|
|
19
|
+
throw new SimBackupInvalidParameterValueException("MaxRetentionDays must be between 1 and 36500");
|
|
20
|
+
}
|
|
21
|
+
if (minimum !== undefined && maximum !== undefined && minimum > maximum) {
|
|
22
|
+
throw new SimBackupInvalidParameterValueException("MinRetentionDays must not exceed MaxRetentionDays");
|
|
23
|
+
}
|
|
24
|
+
validateGracePeriod(configuration.ChangeableForDays);
|
|
25
|
+
}
|
|
26
|
+
function validateGracePeriod(grace) {
|
|
27
|
+
if (grace !== undefined &&
|
|
28
|
+
(!Number.isSafeInteger(grace) || grace < 3 || grace > 36_500)) {
|
|
29
|
+
throw new SimBackupInvalidParameterValueException("ChangeableForDays must be between 3 and 36500");
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { SimBackupLifecycle } from "../command/sim-backup-command.types.js";
|
|
2
|
+
export interface SimBackupVaultLockConfiguration {
|
|
3
|
+
readonly MinRetentionDays?: number | undefined;
|
|
4
|
+
readonly MaxRetentionDays?: number | undefined;
|
|
5
|
+
readonly ChangeableForDays?: number | undefined;
|
|
6
|
+
}
|
|
7
|
+
/** Holds the Vault Lock state for one backup vault. */
|
|
8
|
+
export declare class SimBackupVaultLock {
|
|
9
|
+
private readonly vaultName;
|
|
10
|
+
configuration?: SimBackupVaultLockConfiguration | undefined;
|
|
11
|
+
lockDate?: Date | undefined;
|
|
12
|
+
constructor(vaultName: string);
|
|
13
|
+
configure(configuration: SimBackupVaultLockConfiguration, now: Date): void;
|
|
14
|
+
lifecycleRefusal(lifecycle: SimBackupLifecycle | undefined): string | undefined;
|
|
15
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SimBackupInvalidParameterValueException } from "../error/sim-backup.error.js";
|
|
2
|
+
import { backupVaultLockDate, validateBackupVaultLockConfiguration, } from "./sim-backup-vault-lock-configuration.js";
|
|
3
|
+
import { backupLifecycleRefusal } from "./sim-backup-vault-retention.js";
|
|
4
|
+
/** Holds the Vault Lock state for one backup vault. */
|
|
5
|
+
export class SimBackupVaultLock {
|
|
6
|
+
vaultName;
|
|
7
|
+
configuration;
|
|
8
|
+
lockDate;
|
|
9
|
+
constructor(vaultName) {
|
|
10
|
+
this.vaultName = vaultName;
|
|
11
|
+
}
|
|
12
|
+
configure(configuration, now) {
|
|
13
|
+
if (this.lockDate !== undefined && now >= this.lockDate) {
|
|
14
|
+
throw new SimBackupInvalidParameterValueException(`The lock configuration for backup vault ${this.vaultName} is immutable`);
|
|
15
|
+
}
|
|
16
|
+
validateBackupVaultLockConfiguration(configuration);
|
|
17
|
+
this.configuration = { ...configuration };
|
|
18
|
+
this.lockDate = backupVaultLockDate(configuration.ChangeableForDays, now);
|
|
19
|
+
}
|
|
20
|
+
lifecycleRefusal(lifecycle) {
|
|
21
|
+
return backupLifecycleRefusal(lifecycle, this.configuration);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimBackupRecoveryPoint } from "../recovery-point/sim-backup-recovery-point.js";
|
|
3
|
+
/** Holds the unexpired recovery points in one backup vault. */
|
|
4
|
+
export declare class SimBackupVaultRecoveryPoints {
|
|
5
|
+
private readonly background;
|
|
6
|
+
private readonly stored;
|
|
7
|
+
constructor(background: BackgroundScheduler);
|
|
8
|
+
add(recoveryPoint: SimBackupRecoveryPoint): void;
|
|
9
|
+
all(): readonly SimBackupRecoveryPoint[];
|
|
10
|
+
find(arn: string): SimBackupRecoveryPoint | undefined;
|
|
11
|
+
private expire;
|
|
12
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** Holds the unexpired recovery points in one backup vault. */
|
|
2
|
+
export class SimBackupVaultRecoveryPoints {
|
|
3
|
+
background;
|
|
4
|
+
stored = new Map();
|
|
5
|
+
constructor(background) {
|
|
6
|
+
this.background = background;
|
|
7
|
+
}
|
|
8
|
+
add(recoveryPoint) {
|
|
9
|
+
this.stored.set(recoveryPoint.arn, recoveryPoint);
|
|
10
|
+
}
|
|
11
|
+
all() {
|
|
12
|
+
this.expire();
|
|
13
|
+
return this.stored.values().toArray();
|
|
14
|
+
}
|
|
15
|
+
find(arn) {
|
|
16
|
+
this.expire();
|
|
17
|
+
return this.stored.get(arn);
|
|
18
|
+
}
|
|
19
|
+
expire() {
|
|
20
|
+
const now = this.background.now();
|
|
21
|
+
const expired = this.stored
|
|
22
|
+
.values()
|
|
23
|
+
.filter((point) => point.isExpired(now))
|
|
24
|
+
.map((point) => point.arn)
|
|
25
|
+
.toArray();
|
|
26
|
+
for (const arn of expired) {
|
|
27
|
+
this.stored.delete(arn);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SimBackupLifecycle } from "../command/sim-backup-command.types.js";
|
|
2
|
+
import type { SimBackupVaultLockConfiguration } from "./sim-backup-vault-lock.js";
|
|
3
|
+
/** Returns the Vault Lock reason that rejects a recovery point lifecycle. */
|
|
4
|
+
export declare function backupLifecycleRefusal(lifecycle: SimBackupLifecycle | undefined, lock: SimBackupVaultLockConfiguration | undefined): string | undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Returns the Vault Lock reason that rejects a recovery point lifecycle. */
|
|
2
|
+
export function backupLifecycleRefusal(lifecycle, lock) {
|
|
3
|
+
const retention = lifecycle?.DeleteAfterDays;
|
|
4
|
+
const minimum = lock?.MinRetentionDays;
|
|
5
|
+
if (minimum !== undefined &&
|
|
6
|
+
retention !== undefined &&
|
|
7
|
+
retention !== -1 &&
|
|
8
|
+
retention < minimum) {
|
|
9
|
+
return `Lifecycle retention of ${retention} days is below the vault minimum of ${minimum} days`;
|
|
10
|
+
}
|
|
11
|
+
const maximum = lock?.MaxRetentionDays;
|
|
12
|
+
if (maximum === undefined ||
|
|
13
|
+
(retention !== undefined && retention !== -1 && retention <= maximum)) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
const requested = retention === undefined || retention === -1
|
|
17
|
+
? "indefinite"
|
|
18
|
+
: `${retention} days`;
|
|
19
|
+
return `Lifecycle retention of ${requested} exceeds the vault maximum of ${maximum} days`;
|
|
20
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { SimBackupVaultListMember, SimDescribeBackupVaultCommandOutput } from "../command/sim-backup-command.types.js";
|
|
2
|
+
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
3
|
+
import type { SimBackupLifecycle } from "../command/sim-backup-command.types.js";
|
|
4
|
+
import type { SimBackupRecoveryPoint } from "../recovery-point/sim-backup-recovery-point.js";
|
|
5
|
+
import { type SimBackupVaultLockConfiguration } from "./sim-backup-vault-lock.js";
|
|
6
|
+
export type { SimBackupVaultLockConfiguration } from "./sim-backup-vault-lock.js";
|
|
7
|
+
interface SimBackupVaultProperties {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly arn: string;
|
|
10
|
+
readonly creationDate: Date;
|
|
11
|
+
readonly encryptionKeyArn?: string | undefined;
|
|
12
|
+
readonly creatorRequestId?: string | undefined;
|
|
13
|
+
readonly background: BackgroundScheduler;
|
|
14
|
+
}
|
|
15
|
+
/** Stores one simulated AWS Backup vault. */
|
|
16
|
+
export declare class SimBackupVault {
|
|
17
|
+
readonly name: string;
|
|
18
|
+
readonly arn: string;
|
|
19
|
+
readonly creationDate: Date;
|
|
20
|
+
readonly encryptionKeyArn?: string | undefined;
|
|
21
|
+
readonly creatorRequestId?: string | undefined;
|
|
22
|
+
private readonly lock;
|
|
23
|
+
private readonly points;
|
|
24
|
+
constructor(properties: SimBackupVaultProperties);
|
|
25
|
+
configureLock(configuration: SimBackupVaultLockConfiguration, now: Date): void;
|
|
26
|
+
describe(): SimDescribeBackupVaultCommandOutput;
|
|
27
|
+
listMember(): SimBackupVaultListMember;
|
|
28
|
+
addRecoveryPoint(recoveryPoint: SimBackupRecoveryPoint): void;
|
|
29
|
+
recoveryPoints(): readonly SimBackupRecoveryPoint[];
|
|
30
|
+
recoveryPoint(arn: string): SimBackupRecoveryPoint | undefined;
|
|
31
|
+
assertEmpty(): void;
|
|
32
|
+
lifecycleRefusal(lifecycle: SimBackupLifecycle | undefined): string | undefined;
|
|
33
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { SimBackupInvalidRequestException } from "../error/sim-backup.error.js";
|
|
2
|
+
import { describeBackupVault } from "./sim-backup-vault-description.js";
|
|
3
|
+
import { SimBackupVaultLock, } from "./sim-backup-vault-lock.js";
|
|
4
|
+
import { SimBackupVaultRecoveryPoints } from "./sim-backup-vault-recovery-points.js";
|
|
5
|
+
/** Stores one simulated AWS Backup vault. */
|
|
6
|
+
export class SimBackupVault {
|
|
7
|
+
name;
|
|
8
|
+
arn;
|
|
9
|
+
creationDate;
|
|
10
|
+
encryptionKeyArn;
|
|
11
|
+
creatorRequestId;
|
|
12
|
+
lock;
|
|
13
|
+
points;
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
this.name = properties.name;
|
|
16
|
+
this.arn = properties.arn;
|
|
17
|
+
this.creationDate = new Date(properties.creationDate);
|
|
18
|
+
this.encryptionKeyArn = properties.encryptionKeyArn;
|
|
19
|
+
this.creatorRequestId = properties.creatorRequestId;
|
|
20
|
+
this.lock = new SimBackupVaultLock(this.name);
|
|
21
|
+
this.points = new SimBackupVaultRecoveryPoints(properties.background);
|
|
22
|
+
}
|
|
23
|
+
configureLock(configuration, now) {
|
|
24
|
+
this.lock.configure(configuration, now);
|
|
25
|
+
}
|
|
26
|
+
describe() {
|
|
27
|
+
return describeBackupVault(this, this.lock.configuration, this.lock.lockDate, this.recoveryPoints().length);
|
|
28
|
+
}
|
|
29
|
+
listMember() {
|
|
30
|
+
return this.describe();
|
|
31
|
+
}
|
|
32
|
+
addRecoveryPoint(recoveryPoint) {
|
|
33
|
+
this.points.add(recoveryPoint);
|
|
34
|
+
}
|
|
35
|
+
recoveryPoints() {
|
|
36
|
+
return this.points.all();
|
|
37
|
+
}
|
|
38
|
+
recoveryPoint(arn) {
|
|
39
|
+
return this.points.find(arn);
|
|
40
|
+
}
|
|
41
|
+
assertEmpty() {
|
|
42
|
+
if (this.recoveryPoints().length > 0) {
|
|
43
|
+
throw new SimBackupInvalidRequestException(`Backup vault ${this.name} cannot be deleted while it contains recovery points`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
lifecycleRefusal(lifecycle) {
|
|
47
|
+
return this.lock.lifecycleRefusal(lifecycle);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { SimCfnResourceValueAdapterProperties, SimCfnServiceValueAdapter } from "../sim-cfn-resource-value-adapter.js";
|
|
2
|
+
/** Returns the CloudFormation value adapter for an AWS Backup resource. */
|
|
3
|
+
export declare function backupValueAdapter(properties: SimCfnResourceValueAdapterProperties): SimCfnServiceValueAdapter;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { SimBackupPlan } from "../../../../backup/plan/sim-backup-plan.js";
|
|
2
|
+
import { SimBackupSelection } from "../../../../backup/selection/sim-backup-selection.js";
|
|
3
|
+
import { SimBackupVault } from "../../../../backup/vault/sim-backup-vault.js";
|
|
4
|
+
class SimBackupVaultCfn {
|
|
5
|
+
vault;
|
|
6
|
+
constructor(vault) {
|
|
7
|
+
this.vault = vault;
|
|
8
|
+
}
|
|
9
|
+
refValue() {
|
|
10
|
+
return this.vault.name;
|
|
11
|
+
}
|
|
12
|
+
attributeValue(name) {
|
|
13
|
+
if (name === "BackupVaultArn")
|
|
14
|
+
return this.vault.arn;
|
|
15
|
+
if (name === "BackupVaultName")
|
|
16
|
+
return this.vault.name;
|
|
17
|
+
throw new Error(`Unsupported AWS::Backup::BackupVault attribute ${name}`);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
class SimBackupPlanCfn {
|
|
21
|
+
plan;
|
|
22
|
+
constructor(plan) {
|
|
23
|
+
this.plan = plan;
|
|
24
|
+
}
|
|
25
|
+
refValue() {
|
|
26
|
+
return this.plan.id;
|
|
27
|
+
}
|
|
28
|
+
attributeValue(name) {
|
|
29
|
+
if (name === "BackupPlanArn")
|
|
30
|
+
return this.plan.arn;
|
|
31
|
+
if (name === "BackupPlanId")
|
|
32
|
+
return this.plan.id;
|
|
33
|
+
if (name === "VersionId")
|
|
34
|
+
return this.plan.versionId;
|
|
35
|
+
throw new Error(`Unsupported AWS::Backup::BackupPlan attribute ${name}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
class SimBackupSelectionCfn {
|
|
39
|
+
selection;
|
|
40
|
+
constructor(selection) {
|
|
41
|
+
this.selection = selection;
|
|
42
|
+
}
|
|
43
|
+
refValue() {
|
|
44
|
+
return this.selection.id;
|
|
45
|
+
}
|
|
46
|
+
attributeValue(name) {
|
|
47
|
+
if (name === "BackupPlanId")
|
|
48
|
+
return this.selection.planId;
|
|
49
|
+
if (name === "Id" || name === "SelectionId")
|
|
50
|
+
return this.selection.id;
|
|
51
|
+
throw new Error(`Unsupported AWS::Backup::BackupSelection attribute ${name}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** Returns the CloudFormation value adapter for an AWS Backup resource. */
|
|
55
|
+
export function backupValueAdapter(properties) {
|
|
56
|
+
if (properties.simResource instanceof SimBackupVault) {
|
|
57
|
+
return new SimBackupVaultCfn(properties.simResource);
|
|
58
|
+
}
|
|
59
|
+
if (properties.simResource instanceof SimBackupPlan) {
|
|
60
|
+
return new SimBackupPlanCfn(properties.simResource);
|
|
61
|
+
}
|
|
62
|
+
if (properties.simResource instanceof SimBackupSelection) {
|
|
63
|
+
return new SimBackupSelectionCfn(properties.simResource);
|
|
64
|
+
}
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
@@ -2,10 +2,12 @@ import { SimLogsDeliveryDestination } from "../../../../logs/delivery/sim-logs-d
|
|
|
2
2
|
import { SimLogsDeliverySource } from "../../../../logs/delivery/sim-logs-delivery-source.js";
|
|
3
3
|
import { SimLogsDelivery } from "../../../../logs/delivery/sim-logs-delivery.js";
|
|
4
4
|
import { SimLogsLogGroup } from "../../../../logs/group/sim-logs-log-group.js";
|
|
5
|
+
import { SimLogsMetricFilter } from "../../../../logs/metric/sim-logs-metric-filter.js";
|
|
5
6
|
import { SimLogsDeliveryDestinationCfn } from "./sim-logs-delivery-destination-cfn.js";
|
|
6
7
|
import { SimLogsDeliverySourceCfn } from "./sim-logs-delivery-source-cfn.js";
|
|
7
8
|
import { SimLogsDeliveryCfn } from "./sim-logs-delivery-cfn.js";
|
|
8
9
|
import { SimLogsLogGroupCfn } from "./sim-logs-log-group-cfn.js";
|
|
10
|
+
import { SimLogsMetricFilterCfn } from "./sim-logs-metric-filter-cfn.js";
|
|
9
11
|
/**
|
|
10
12
|
* The CloudFormation-facing value adapter for a simulated CloudWatch Logs
|
|
11
13
|
* Resource.
|
|
@@ -16,6 +18,10 @@ export function logsValueAdapter(properties) {
|
|
|
16
18
|
simResource instanceof SimLogsLogGroup) {
|
|
17
19
|
return new SimLogsLogGroupCfn({ group: simResource });
|
|
18
20
|
}
|
|
21
|
+
if (type === "AWS::Logs::MetricFilter" &&
|
|
22
|
+
simResource instanceof SimLogsMetricFilter) {
|
|
23
|
+
return new SimLogsMetricFilterCfn({ filter: simResource });
|
|
24
|
+
}
|
|
19
25
|
if (type === "AWS::Logs::DeliverySource" &&
|
|
20
26
|
simResource instanceof SimLogsDeliverySource) {
|
|
21
27
|
return new SimLogsDeliverySourceCfn({ source: simResource });
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SimLogsMetricFilter } from "../../../../logs/metric/sim-logs-metric-filter.js";
|
|
2
|
+
import type { SimCfnTemplateValue } from "../../../template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimCfnResourceValueAdapter } from "../sim-cfn-resource-value-adapter.js";
|
|
4
|
+
interface SimLogsMetricFilterCfnProperties {
|
|
5
|
+
readonly filter: SimLogsMetricFilter;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* CloudFormation-facing values for a simulated CloudWatch Logs metric filter.
|
|
9
|
+
*/
|
|
10
|
+
export declare class SimLogsMetricFilterCfn implements SimCfnResourceValueAdapter {
|
|
11
|
+
#private;
|
|
12
|
+
constructor(properties: SimLogsMetricFilterCfnProperties);
|
|
13
|
+
/**
|
|
14
|
+
* AWS::Logs::MetricFilter Ref returns the filter name.
|
|
15
|
+
*/
|
|
16
|
+
refValue(): SimCfnTemplateValue;
|
|
17
|
+
/**
|
|
18
|
+
* AWS::Logs::MetricFilter attributes, of which real CloudFormation returns
|
|
19
|
+
* none.
|
|
20
|
+
*/
|
|
21
|
+
attributeValue(attributeName: string): SimCfnTemplateValue;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CloudFormation-facing values for a simulated CloudWatch Logs metric filter.
|
|
3
|
+
*/
|
|
4
|
+
export class SimLogsMetricFilterCfn {
|
|
5
|
+
#filter;
|
|
6
|
+
constructor(properties) {
|
|
7
|
+
this.#filter = properties.filter;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* AWS::Logs::MetricFilter Ref returns the filter name.
|
|
11
|
+
*/
|
|
12
|
+
refValue() {
|
|
13
|
+
return this.#filter.filterName;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* AWS::Logs::MetricFilter attributes, of which real CloudFormation returns
|
|
17
|
+
* none.
|
|
18
|
+
*/
|
|
19
|
+
attributeValue(attributeName) {
|
|
20
|
+
throw new Error(`Unsupported AWS::Logs::MetricFilter attribute ${attributeName}`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -2,6 +2,7 @@ import { acmValueAdapter } from "./acm/sim-acm-cfn-value-adapter.js";
|
|
|
2
2
|
import { apiGatewayValueAdapter } from "./apigateway/sim-api-gateway-cfn-value-adapter.js";
|
|
3
3
|
import { apiGatewayV2ValueAdapter } from "./apigatewayv2/sim-api-gateway-v2-cfn-value-adapter.js";
|
|
4
4
|
import { athenaValueAdapter } from "./athena/sim-athena-cfn-value-adapter.js";
|
|
5
|
+
import { backupValueAdapter } from "./backup/sim-backup-cfn-value-adapter.js";
|
|
5
6
|
import { cdkCustomResourceValueAdapter } from "./cdk/sim-cdk-custom-resource-value-adapter.js";
|
|
6
7
|
import { cloudFrontValueAdapter } from "./cloudfront/sim-cloudfront-cfn-value-adapter.js";
|
|
7
8
|
import { cloudWatchValueAdapter } from "./cloudwatch/sim-cloudwatch-cfn-value-adapter.js";
|
|
@@ -45,6 +46,7 @@ export const simCfnServiceValueAdapters = [
|
|
|
45
46
|
apiGatewayValueAdapter,
|
|
46
47
|
apiGatewayV2ValueAdapter,
|
|
47
48
|
athenaValueAdapter,
|
|
49
|
+
backupValueAdapter,
|
|
48
50
|
cdkCustomResourceValueAdapter,
|
|
49
51
|
cloudFrontValueAdapter,
|
|
50
52
|
cloudWatchValueAdapter,
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { SimCfnTemplateValueRecord } from "../../template/value/sim-cfn-template-value.js";
|
|
2
|
+
import type { SimCfnSkippedPropertyRules } from "./sim-cfn-skipped-property.type.js";
|
|
3
|
+
interface SimCfnSkippedPropertiesProperties {
|
|
4
|
+
readonly rules: SimCfnSkippedPropertyRules;
|
|
5
|
+
readonly properties: SimCfnTemplateValueRecord;
|
|
6
|
+
readonly error: (reason: string) => Error;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* What one Resource's skipped properties say, and what they still have to
|
|
10
|
+
* satisfy.
|
|
11
|
+
*
|
|
12
|
+
* Simulated CloudFormation deploys what it can, so a property a service cannot
|
|
13
|
+
* act on is recorded against the Resource rather than taking it down. That
|
|
14
|
+
* leaves a gap. A skipped property can carry a value real AWS answers with a
|
|
15
|
+
* 400 as readily as a simulated one can, and deploying it here reports a
|
|
16
|
+
* template AWS refuses as working, which is the one failure a local deploy of
|
|
17
|
+
* a real template exists to catch.
|
|
18
|
+
*
|
|
19
|
+
* This is where a service closes that gap. The constraint sits beside the
|
|
20
|
+
* reason in the same map, and every service reaches it the same way, so the
|
|
21
|
+
* next one to need it has nothing to build.
|
|
22
|
+
*/
|
|
23
|
+
export declare class SimCfnSkippedProperties {
|
|
24
|
+
private readonly rules;
|
|
25
|
+
private readonly properties;
|
|
26
|
+
private readonly error;
|
|
27
|
+
constructor(properties: SimCfnSkippedPropertiesProperties);
|
|
28
|
+
/**
|
|
29
|
+
* Refuse the Resource where a skipped value is one real AWS would answer
|
|
30
|
+
* with a 400.
|
|
31
|
+
*
|
|
32
|
+
* Every constraint runs before anything is recorded, so a Resource that
|
|
33
|
+
* fails one leaves no half-written list of what it was created without.
|
|
34
|
+
*/
|
|
35
|
+
assertConstraints(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Why a property is skipped, or nothing where this service has no entry for
|
|
38
|
+
* it.
|
|
39
|
+
*/
|
|
40
|
+
reasonFor(name: string): string | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* What a property's value has to satisfy, where the service stated it.
|
|
43
|
+
*
|
|
44
|
+
* A rule that is a bare reason states nothing, which is the common case and
|
|
45
|
+
* the reason both shapes share one map.
|
|
46
|
+
*/
|
|
47
|
+
private constraintOn;
|
|
48
|
+
}
|
|
49
|
+
export {};
|