Skip to content

Commit 36e72b0

Browse files
author
AWS
committed
AWS Transfer Family Update: Enable use of CloudFormation traits in Smithy model to improve generated CloudFormation schema from the Smithy API model.
1 parent bc14086 commit 36e72b0

File tree

2 files changed

+32
-15
lines changed

2 files changed

+32
-15
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "AWS Transfer Family",
4+
"contributor": "",
5+
"description": "Enable use of CloudFormation traits in Smithy model to improve generated CloudFormation schema from the Smithy API model."
6+
}

services/transfer/src/main/resources/codegen-resources/service-2.json

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"endpointPrefix":"transfer",
66
"jsonVersion":"1.1",
77
"protocol":"json",
8+
"protocols":["json"],
89
"serviceAbbreviation":"AWS Transfer",
910
"serviceFullName":"AWS Transfer Family",
1011
"serviceId":"Transfer",
@@ -118,7 +119,8 @@
118119
{"shape":"ServiceUnavailableException"},
119120
{"shape":"ResourceExistsException"}
120121
],
121-
"documentation":"<p>Creates a user and associates them with an existing file transfer protocol-enabled server. You can only create and associate users with servers that have the <code>IdentityProviderType</code> set to <code>SERVICE_MANAGED</code>. Using parameters for <code>CreateUser</code>, you can specify the user name, set the home directory, store the user's public key, and assign the user's Identity and Access Management (IAM) role. You can also optionally add a session policy, and assign metadata with tags that can be used to group and search for users.</p>"
122+
"documentation":"<p>Creates a user and associates them with an existing file transfer protocol-enabled server. You can only create and associate users with servers that have the <code>IdentityProviderType</code> set to <code>SERVICE_MANAGED</code>. Using parameters for <code>CreateUser</code>, you can specify the user name, set the home directory, store the user's public key, and assign the user's Identity and Access Management (IAM) role. You can also optionally add a session policy, and assign metadata with tags that can be used to group and search for users.</p>",
123+
"idempotent":true
122124
},
123125
"CreateWorkflow":{
124126
"name":"CreateWorkflow",
@@ -166,7 +168,8 @@
166168
{"shape":"InternalServiceError"},
167169
{"shape":"ServiceUnavailableException"}
168170
],
169-
"documentation":"<p>Delete the agreement that's specified in the provided <code>AgreementId</code>.</p>"
171+
"documentation":"<p>Delete the agreement that's specified in the provided <code>AgreementId</code>.</p>",
172+
"idempotent":true
170173
},
171174
"DeleteCertificate":{
172175
"name":"DeleteCertificate",
@@ -181,7 +184,8 @@
181184
{"shape":"InternalServiceError"},
182185
{"shape":"ServiceUnavailableException"}
183186
],
184-
"documentation":"<p>Deletes the certificate that's specified in the <code>CertificateId</code> parameter.</p>"
187+
"documentation":"<p>Deletes the certificate that's specified in the <code>CertificateId</code> parameter.</p>",
188+
"idempotent":true
185189
},
186190
"DeleteConnector":{
187191
"name":"DeleteConnector",
@@ -196,7 +200,8 @@
196200
{"shape":"InternalServiceError"},
197201
{"shape":"ServiceUnavailableException"}
198202
],
199-
"documentation":"<p>Deletes the connector that's specified in the provided <code>ConnectorId</code>.</p>"
203+
"documentation":"<p>Deletes the connector that's specified in the provided <code>ConnectorId</code>.</p>",
204+
"idempotent":true
200205
},
201206
"DeleteHostKey":{
202207
"name":"DeleteHostKey",
@@ -227,7 +232,8 @@
227232
{"shape":"InternalServiceError"},
228233
{"shape":"ServiceUnavailableException"}
229234
],
230-
"documentation":"<p>Deletes the profile that's specified in the <code>ProfileId</code> parameter.</p>"
235+
"documentation":"<p>Deletes the profile that's specified in the <code>ProfileId</code> parameter.</p>",
236+
"idempotent":true
231237
},
232238
"DeleteServer":{
233239
"name":"DeleteServer",
@@ -243,7 +249,8 @@
243249
{"shape":"ServiceUnavailableException"},
244250
{"shape":"AccessDeniedException"}
245251
],
246-
"documentation":"<p>Deletes the file transfer protocol-enabled server that you specify.</p> <p>No response returns from this operation.</p>"
252+
"documentation":"<p>Deletes the file transfer protocol-enabled server that you specify.</p> <p>No response returns from this operation.</p>",
253+
"idempotent":true
247254
},
248255
"DeleteSshPublicKey":{
249256
"name":"DeleteSshPublicKey",
@@ -274,7 +281,8 @@
274281
{"shape":"InternalServiceError"},
275282
{"shape":"ServiceUnavailableException"}
276283
],
277-
"documentation":"<p>Deletes the user belonging to a file transfer protocol-enabled server you specify.</p> <p>No response returns from this operation.</p> <note> <p>When you delete a user from a server, the user's information is lost.</p> </note>"
284+
"documentation":"<p>Deletes the user belonging to a file transfer protocol-enabled server you specify.</p> <p>No response returns from this operation.</p> <note> <p>When you delete a user from a server, the user's information is lost.</p> </note>",
285+
"idempotent":true
278286
},
279287
"DeleteWorkflow":{
280288
"name":"DeleteWorkflow",
@@ -290,7 +298,8 @@
290298
{"shape":"ServiceUnavailableException"},
291299
{"shape":"AccessDeniedException"}
292300
],
293-
"documentation":"<p>Deletes the specified workflow.</p>"
301+
"documentation":"<p>Deletes the specified workflow.</p>",
302+
"idempotent":true
294303
},
295304
"DescribeAccess":{
296305
"name":"DescribeAccess",
@@ -2188,7 +2197,7 @@
21882197
},
21892198
"Usage":{
21902199
"shape":"CertificateUsageType",
2191-
"documentation":"<p>Specifies whether this certificate is used for signing or encryption.</p>"
2200+
"documentation":"<p>Specifies how this certificate is used. It can be used in the following ways:</p> <ul> <li> <p> <code>SIGNING</code>: For signing AS2 messages</p> </li> <li> <p> <code>ENCRYPTION</code>: For encrypting AS2 messages</p> </li> <li> <p> <code>TLS</code>: For securing AS2 communications sent over HTTPS</p> </li> </ul>"
21922201
},
21932202
"Status":{
21942203
"shape":"CertificateStatusType",
@@ -2446,7 +2455,7 @@
24462455
},
24472456
"Domain":{
24482457
"shape":"Domain",
2449-
"documentation":"<p>Specifies the domain of the storage system that is used for file transfers.</p>"
2458+
"documentation":"<p>Specifies the domain of the storage system that is used for file transfers. There are two domains available: Amazon Simple Storage Service (Amazon S3) and Amazon Elastic File System (Amazon EFS). The default value is S3.</p>"
24502459
},
24512460
"EndpointDetails":{
24522461
"shape":"EndpointDetails",
@@ -2935,7 +2944,7 @@
29352944
"members":{
29362945
"Usage":{
29372946
"shape":"CertificateUsageType",
2938-
"documentation":"<p>Specifies whether this certificate is used for signing or encryption.</p>"
2947+
"documentation":"<p>Specifies how this certificate is used. It can be used in the following ways:</p> <ul> <li> <p> <code>SIGNING</code>: For signing AS2 messages</p> </li> <li> <p> <code>ENCRYPTION</code>: For encrypting AS2 messages</p> </li> <li> <p> <code>TLS</code>: For securing AS2 communications sent over HTTPS</p> </li> </ul>"
29392948
},
29402949
"Certificate":{
29412950
"shape":"CertificateBodyType",
@@ -3572,7 +3581,7 @@
35723581
},
35733582
"Usage":{
35743583
"shape":"CertificateUsageType",
3575-
"documentation":"<p>Specifies whether this certificate is used for signing or encryption.</p>"
3584+
"documentation":"<p>Specifies how this certificate is used. It can be used in the following ways:</p> <ul> <li> <p> <code>SIGNING</code>: For signing AS2 messages</p> </li> <li> <p> <code>ENCRYPTION</code>: For encrypting AS2 messages</p> </li> <li> <p> <code>TLS</code>: For securing AS2 communications sent over HTTPS</p> </li> </ul>"
35763585
},
35773586
"Status":{
35783587
"shape":"CertificateStatusType",
@@ -3720,7 +3729,7 @@
37203729
},
37213730
"Domain":{
37223731
"shape":"Domain",
3723-
"documentation":"<p>Specifies the domain of the storage system that is used for file transfers.</p>"
3732+
"documentation":"<p>Specifies the domain of the storage system that is used for file transfers. There are two domains available: Amazon Simple Storage Service (Amazon S3) and Amazon Elastic File System (Amazon EFS). The default value is S3.</p>"
37243733
},
37253734
"IdentityProviderType":{
37263735
"shape":"IdentityProviderType",
@@ -4286,7 +4295,8 @@
42864295
},
42874296
"ServiceManagedEgressIpAddresses":{
42884297
"type":"list",
4289-
"member":{"shape":"ServiceManagedEgressIpAddress"}
4298+
"member":{"shape":"ServiceManagedEgressIpAddress"},
4299+
"documentation":"<p>The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.</p>"
42904300
},
42914301
"ServiceMetadata":{
42924302
"type":"structure",
@@ -4403,7 +4413,8 @@
44034413
"SshPublicKeyBody":{
44044414
"type":"string",
44054415
"max":2048,
4406-
"min":0
4416+
"min":0,
4417+
"pattern":"\\s*(ssh|ecdsa)-[a-z0-9-]+[ \\t]+(([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{1,3})?(={0,3})?)(\\s*|[ \\t]+[\\S \\t]*\\s*)"
44074418
},
44084419
"SshPublicKeyCount":{
44094420
"type":"integer",

0 commit comments

Comments
 (0)