You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: implement UsagePlan and ApiKey support in L2 constructs for aws-apigatewayv2 (WebSocketApi) (#35060)
### Issue # (if applicable)
Closes#28756.
### Reason for this change
Couldn't create `UsagePlans` and `ApiKeys` for `WebSocketApi` (`apigatewayv2`) using L2 constructs, cause these 2 features were supported only by `RestApi` (`apigatewayv1`).
### Description of changes
`HttpApi`(`apigatewayv2`) doesn't permit creating `UsagePlans` or `ApiKeys` in any way, so bringing these functionalities from `apigatewayv1` to `apigatewayv2` is possible only for `WebSocketApi`.
- Added `UsagePlan` and `ApiKey` files in `aws-apigatewayv2/lib/websocket` folder
- Implemented needed interfaces, classes and methods very similar to what was written for `RestApi` (`apigatewayv1`)
- Included explicit dependency management between components for proper _CloudFormation_ deployment order
- Added new _JSDoc_ in order to be able to build the project
### Describe any new or updated permissions being added
N/A
### Description of how you validated changes
- Tested manually by deploying a stack containing and linking the new features
- Wrote unit and integration tests
### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)
----
*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Copy file name to clipboardExpand all lines: packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2/test/websocket/integ.usage-plan.js.snapshot/WebSocketUsagePlanIntegDefaultTestDeployAssert17052BCC.assets.json
Copy file name to clipboardExpand all lines: packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2/test/websocket/integ.usage-plan.js.snapshot/WebSocketUsagePlanIntegDefaultTestDeployAssert17052BCC.template.json
Copy file name to clipboardExpand all lines: packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2/test/websocket/integ.usage-plan.js.snapshot/aws-cdk-aws-apigatewayv2-websocket-usage-plan.assets.json
Copy file name to clipboardExpand all lines: packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2/test/websocket/integ.usage-plan.js.snapshot/cdk.out
Copy file name to clipboardExpand all lines: packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2/test/websocket/integ.usage-plan.js.snapshot/integ.json
0 commit comments