Skip to content

Commit 5e73fd4

Browse files
author
awstools
committed
feat(client-rbin): Adding new BDD representation of endpoint ruleset
1 parent d95ca14 commit 5e73fd4

1 file changed

Lines changed: 188 additions & 0 deletions

File tree

codegen/sdk-codegen/aws-models/rbin.json

Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,194 @@
7878
"aws.protocols#restJson1": {},
7979
"smithy.api#documentation": "<p>This is the <i>Recycle Bin API Reference</i>. This documentation provides \n descriptions and syntax for each of the actions and data types in Recycle Bin.</p>\n <p>Recycle Bin is a resource recovery feature that enables you to restore accidentally deleted \n EBS volumes, EBS snapshots, and EBS-backed AMIs. When using Recycle Bin, if your resources are \n deleted, they are retained in the Recycle Bin for a time period that you specify.</p>\n <p>You can restore a resource from the Recycle Bin at any time before its retention period \n expires. After you restore a resource from the Recycle Bin, the resource is removed from the \n Recycle Bin, and you can then use it in the same way you use any other resource of that type \n in your account. If the retention period expires and the resource is not restored, the resource \n is permanently deleted from the Recycle Bin and is no longer available for recovery. For more \n information about Recycle Bin, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html\">\n Recycle Bin</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>",
8080
"smithy.api#title": "Amazon Recycle Bin",
81+
"smithy.rules#endpointBdd": {
82+
"version": "1.1",
83+
"parameters": {
84+
"Region": {
85+
"builtIn": "AWS::Region",
86+
"required": false,
87+
"documentation": "The AWS region used to dispatch the request.",
88+
"type": "string"
89+
},
90+
"UseDualStack": {
91+
"builtIn": "AWS::UseDualStack",
92+
"required": true,
93+
"default": false,
94+
"documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
95+
"type": "boolean"
96+
},
97+
"UseFIPS": {
98+
"builtIn": "AWS::UseFIPS",
99+
"required": true,
100+
"default": false,
101+
"documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
102+
"type": "boolean"
103+
},
104+
"Endpoint": {
105+
"builtIn": "SDK::Endpoint",
106+
"required": false,
107+
"documentation": "Override the endpoint used to send this request",
108+
"type": "string"
109+
}
110+
},
111+
"conditions": [
112+
{
113+
"fn": "isSet",
114+
"argv": [
115+
{
116+
"ref": "Endpoint"
117+
}
118+
]
119+
},
120+
{
121+
"fn": "isSet",
122+
"argv": [
123+
{
124+
"ref": "Region"
125+
}
126+
]
127+
},
128+
{
129+
"fn": "aws.partition",
130+
"argv": [
131+
{
132+
"ref": "Region"
133+
}
134+
],
135+
"assign": "PartitionResult"
136+
},
137+
{
138+
"fn": "booleanEquals",
139+
"argv": [
140+
{
141+
"ref": "UseFIPS"
142+
},
143+
true
144+
]
145+
},
146+
{
147+
"fn": "booleanEquals",
148+
"argv": [
149+
{
150+
"ref": "UseDualStack"
151+
},
152+
true
153+
]
154+
},
155+
{
156+
"fn": "booleanEquals",
157+
"argv": [
158+
{
159+
"fn": "getAttr",
160+
"argv": [
161+
{
162+
"ref": "PartitionResult"
163+
},
164+
"supportsDualStack"
165+
]
166+
},
167+
true
168+
]
169+
},
170+
{
171+
"fn": "booleanEquals",
172+
"argv": [
173+
{
174+
"fn": "getAttr",
175+
"argv": [
176+
{
177+
"ref": "PartitionResult"
178+
},
179+
"supportsFIPS"
180+
]
181+
},
182+
true
183+
]
184+
}
185+
],
186+
"results": [
187+
{
188+
"conditions": [],
189+
"error": "Invalid Configuration: FIPS and custom endpoint are not supported",
190+
"type": "error"
191+
},
192+
{
193+
"conditions": [],
194+
"error": "Invalid Configuration: Dualstack and custom endpoint are not supported",
195+
"type": "error"
196+
},
197+
{
198+
"conditions": [],
199+
"endpoint": {
200+
"url": {
201+
"ref": "Endpoint"
202+
},
203+
"properties": {},
204+
"headers": {}
205+
},
206+
"type": "endpoint"
207+
},
208+
{
209+
"conditions": [],
210+
"endpoint": {
211+
"url": "https://rbin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
212+
"properties": {},
213+
"headers": {}
214+
},
215+
"type": "endpoint"
216+
},
217+
{
218+
"conditions": [],
219+
"error": "FIPS and DualStack are enabled, but this partition does not support one or both",
220+
"type": "error"
221+
},
222+
{
223+
"conditions": [],
224+
"endpoint": {
225+
"url": "https://rbin-fips.{Region}.{PartitionResult#dnsSuffix}",
226+
"properties": {},
227+
"headers": {}
228+
},
229+
"type": "endpoint"
230+
},
231+
{
232+
"conditions": [],
233+
"error": "FIPS is enabled but this partition does not support FIPS",
234+
"type": "error"
235+
},
236+
{
237+
"conditions": [],
238+
"endpoint": {
239+
"url": "https://rbin.{Region}.{PartitionResult#dualStackDnsSuffix}",
240+
"properties": {},
241+
"headers": {}
242+
},
243+
"type": "endpoint"
244+
},
245+
{
246+
"conditions": [],
247+
"error": "DualStack is enabled but this partition does not support DualStack",
248+
"type": "error"
249+
},
250+
{
251+
"conditions": [],
252+
"endpoint": {
253+
"url": "https://rbin.{Region}.{PartitionResult#dnsSuffix}",
254+
"properties": {},
255+
"headers": {}
256+
},
257+
"type": "endpoint"
258+
},
259+
{
260+
"conditions": [],
261+
"error": "Invalid Configuration: Missing Region",
262+
"type": "error"
263+
}
264+
],
265+
"root": 2,
266+
"nodeCount": 13,
267+
"nodes": "/////wAAAAH/////AAAAAAAAAAwAAAADAAAAAQAAAAQF9eELAAAAAgAAAAUF9eELAAAAAwAAAAgAAAAGAAAABAAAAAcF9eEKAAAABQX14QgF9eEJAAAABAAAAAoAAAAJAAAABgX14QYF9eEHAAAABQAAAAsF9eEFAAAABgX14QQF9eEFAAAAAwX14QEAAAANAAAABAX14QIF9eED"
268+
},
81269
"smithy.rules#endpointRuleSet": {
82270
"version": "1.0",
83271
"parameters": {

0 commit comments

Comments
 (0)