From e663f3ffd51844738fc8e8c9b321d9f6931cc4e5 Mon Sep 17 00:00:00 2001 From: awstools Date: Tue, 11 Apr 2023 19:25:27 +0000 Subject: [PATCH] feat(client-iot-data-plane): This release adds support for MQTT5 user properties when calling the AWS IoT GetRetainedMessage API --- .../client-iot-data-plane/src/IoTDataPlane.ts | 4 +- .../src/commands/GetRetainedMessageCommand.ts | 2 +- .../commands/ListRetainedMessagesCommand.ts | 2 +- .../src/models/models_0.ts | 11 + .../src/protocols/Aws_restJson1.ts | 3 + .../aws-models/iot-data-plane.json | 203 +++++++++--------- 6 files changed, 124 insertions(+), 101 deletions(-) diff --git a/clients/client-iot-data-plane/src/IoTDataPlane.ts b/clients/client-iot-data-plane/src/IoTDataPlane.ts index 54890c072775..f826a8b4a81e 100644 --- a/clients/client-iot-data-plane/src/IoTDataPlane.ts +++ b/clients/client-iot-data-plane/src/IoTDataPlane.ts @@ -89,7 +89,7 @@ export class IoTDataPlane extends IoTDataPlaneClient { *

Gets the details of a single retained message for the specified topic.

*

This action returns the message payload of the retained message, which can * incur messaging costs. To list only the topic names of the retained messages, call - * ListRetainedMessages.

+ * ListRetainedMessages.

*

Requires permission to access the GetRetainedMessage action.

*

For more information about messaging costs, see Amazon Web Services IoT Core * pricing - Messaging.

@@ -200,7 +200,7 @@ export class IoTDataPlane extends IoTDataPlaneClient { * return any message payloads. Although this action doesn't return a message payload, * it can still incur messaging costs.

*

To get the message payload of a retained message, call - * GetRetainedMessage + * GetRetainedMessage * with the topic name of the retained message.

*

Requires permission to access the ListRetainedMessages action.

*

For more information about messaging costs, see Amazon Web Services IoT Core diff --git a/clients/client-iot-data-plane/src/commands/GetRetainedMessageCommand.ts b/clients/client-iot-data-plane/src/commands/GetRetainedMessageCommand.ts index e39875d2250c..5f04dbca6639 100644 --- a/clients/client-iot-data-plane/src/commands/GetRetainedMessageCommand.ts +++ b/clients/client-iot-data-plane/src/commands/GetRetainedMessageCommand.ts @@ -35,7 +35,7 @@ export interface GetRetainedMessageCommandOutput extends GetRetainedMessageRespo *

Gets the details of a single retained message for the specified topic.

*

This action returns the message payload of the retained message, which can * incur messaging costs. To list only the topic names of the retained messages, call - * ListRetainedMessages.

+ * ListRetainedMessages.

*

Requires permission to access the GetRetainedMessage action.

*

For more information about messaging costs, see Amazon Web Services IoT Core * pricing - Messaging.

diff --git a/clients/client-iot-data-plane/src/commands/ListRetainedMessagesCommand.ts b/clients/client-iot-data-plane/src/commands/ListRetainedMessagesCommand.ts index f72c08a60e73..530b1836faa5 100644 --- a/clients/client-iot-data-plane/src/commands/ListRetainedMessagesCommand.ts +++ b/clients/client-iot-data-plane/src/commands/ListRetainedMessagesCommand.ts @@ -37,7 +37,7 @@ export interface ListRetainedMessagesCommandOutput extends ListRetainedMessagesR * return any message payloads. Although this action doesn't return a message payload, * it can still incur messaging costs.

*

To get the message payload of a retained message, call - * GetRetainedMessage + * GetRetainedMessage * with the topic name of the retained message.

*

Requires permission to access the ListRetainedMessages action.

*

For more information about messaging costs, see Amazon Web Services IoT Core diff --git a/clients/client-iot-data-plane/src/models/models_0.ts b/clients/client-iot-data-plane/src/models/models_0.ts index 7fe30180eb1c..7288869eb94e 100644 --- a/clients/client-iot-data-plane/src/models/models_0.ts +++ b/clients/client-iot-data-plane/src/models/models_0.ts @@ -248,6 +248,17 @@ export interface GetRetainedMessageResponse { *

The Epoch date and time, in milliseconds, when the retained message was stored by IoT.

*/ lastModifiedTime?: number; + + /** + *

A base64-encoded JSON string that includes an array of JSON objects, or null if the + * retained message doesn't include any user properties.

+ *

The following example userProperties parameter is a JSON string that + * represents two user properties. Note that it will be base64-encoded:

+ *

+ * [\{"deviceName": "alpha"\}, \{"deviceCnt": "45"\}] + *

+ */ + userProperties?: Uint8Array; } /** diff --git a/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts b/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts index 05fc7b8a4046..7464da5e9706 100644 --- a/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts @@ -350,6 +350,9 @@ export const de_GetRetainedMessageCommand = async ( if (data.topic != null) { contents.topic = __expectString(data.topic); } + if (data.userProperties != null) { + contents.userProperties = context.base64Decoder(data.userProperties); + } return contents; }; diff --git a/codegen/sdk-codegen/aws-models/iot-data-plane.json b/codegen/sdk-codegen/aws-models/iot-data-plane.json index fc1978e579ab..247ce36d2596 100644 --- a/codegen/sdk-codegen/aws-models/iot-data-plane.json +++ b/codegen/sdk-codegen/aws-models/iot-data-plane.json @@ -167,7 +167,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets the details of a single retained message for the specified topic.

\n

This action returns the message payload of the retained message, which can \n incur messaging costs. To list only the topic names of the retained messages, call\n ListRetainedMessages.

\n

Requires permission to access the GetRetainedMessage action.

\n

For more information about messaging costs, see Amazon Web Services IoT Core\n pricing - Messaging.

", + "smithy.api#documentation": "

Gets the details of a single retained message for the specified topic.

\n

This action returns the message payload of the retained message, which can \n incur messaging costs. To list only the topic names of the retained messages, call\n ListRetainedMessages.

\n

Requires permission to access the GetRetainedMessage action.

\n

For more information about messaging costs, see Amazon Web Services IoT Core\n pricing - Messaging.

", "smithy.api#http": { "method": "GET", "uri": "/retainedMessage/{topic}", @@ -220,6 +220,12 @@ "smithy.api#default": 0, "smithy.api#documentation": "

The Epoch date and time, in milliseconds, when the retained message was stored by IoT.

" } + }, + "userProperties": { + "target": "com.amazonaws.iotdataplane#UserPropertiesBlob", + "traits": { + "smithy.api#documentation": "

A base64-encoded JSON string that includes an array of JSON objects, or null if the\n retained message doesn't include any user properties.

\n

The following example userProperties parameter is a JSON string that\n represents two user properties. Note that it will be base64-encoded:

\n

\n [{\"deviceName\": \"alpha\"}, {\"deviceCnt\": \"45\"}]\n

" + } } }, "traits": { @@ -969,9 +975,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-east-1", "UseDualStack": false, - "Region": "ap-east-1" + "UseFIPS": false } }, { @@ -982,9 +988,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-northeast-1", "UseDualStack": false, - "Region": "ap-northeast-1" + "UseFIPS": false } }, { @@ -995,9 +1001,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-northeast-2", "UseDualStack": false, - "Region": "ap-northeast-2" + "UseFIPS": false } }, { @@ -1008,9 +1014,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-south-1", "UseDualStack": false, - "Region": "ap-south-1" + "UseFIPS": false } }, { @@ -1021,9 +1027,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-southeast-1", "UseDualStack": false, - "Region": "ap-southeast-1" + "UseFIPS": false } }, { @@ -1034,9 +1040,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ap-southeast-2", "UseDualStack": false, - "Region": "ap-southeast-2" + "UseFIPS": false } }, { @@ -1047,9 +1053,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "ca-central-1", "UseDualStack": false, - "Region": "ca-central-1" + "UseFIPS": false } }, { @@ -1060,9 +1066,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "ca-central-1", "UseDualStack": false, - "Region": "ca-central-1" + "UseFIPS": true } }, { @@ -1073,9 +1079,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "eu-central-1", "UseDualStack": false, - "Region": "eu-central-1" + "UseFIPS": false } }, { @@ -1086,9 +1092,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "eu-north-1", "UseDualStack": false, - "Region": "eu-north-1" + "UseFIPS": false } }, { @@ -1099,9 +1105,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "eu-west-1", "UseDualStack": false, - "Region": "eu-west-1" + "UseFIPS": false } }, { @@ -1112,9 +1118,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "eu-west-2", "UseDualStack": false, - "Region": "eu-west-2" + "UseFIPS": false } }, { @@ -1125,9 +1131,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "eu-west-3", "UseDualStack": false, - "Region": "eu-west-3" + "UseFIPS": false } }, { @@ -1138,9 +1144,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "me-south-1", "UseDualStack": false, - "Region": "me-south-1" + "UseFIPS": false } }, { @@ -1151,9 +1157,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "sa-east-1", "UseDualStack": false, - "Region": "sa-east-1" + "UseFIPS": false } }, { @@ -1164,9 +1170,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-east-1", "UseDualStack": false, - "Region": "us-east-1" + "UseFIPS": false } }, { @@ -1177,9 +1183,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-east-1", "UseDualStack": false, - "Region": "us-east-1" + "UseFIPS": true } }, { @@ -1190,9 +1196,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-east-2", "UseDualStack": false, - "Region": "us-east-2" + "UseFIPS": false } }, { @@ -1203,9 +1209,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-east-2", "UseDualStack": false, - "Region": "us-east-2" + "UseFIPS": true } }, { @@ -1216,9 +1222,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-west-1", "UseDualStack": false, - "Region": "us-west-1" + "UseFIPS": false } }, { @@ -1229,9 +1235,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-west-1", "UseDualStack": false, - "Region": "us-west-1" + "UseFIPS": true } }, { @@ -1242,9 +1248,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-west-2", "UseDualStack": false, - "Region": "us-west-2" + "UseFIPS": false } }, { @@ -1255,9 +1261,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-west-2", "UseDualStack": false, - "Region": "us-west-2" + "UseFIPS": true } }, { @@ -1268,9 +1274,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-east-1", "UseDualStack": true, - "Region": "us-east-1" + "UseFIPS": true } }, { @@ -1281,9 +1287,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-east-1", "UseDualStack": true, - "Region": "us-east-1" + "UseFIPS": false } }, { @@ -1294,9 +1300,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "cn-north-1", "UseDualStack": false, - "Region": "cn-north-1" + "UseFIPS": false } }, { @@ -1307,9 +1313,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "cn-northwest-1", "UseDualStack": false, - "Region": "cn-northwest-1" + "UseFIPS": false } }, { @@ -1320,9 +1326,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "cn-north-1", "UseDualStack": true, - "Region": "cn-north-1" + "UseFIPS": true } }, { @@ -1333,9 +1339,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "cn-north-1", "UseDualStack": false, - "Region": "cn-north-1" + "UseFIPS": true } }, { @@ -1346,9 +1352,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "cn-north-1", "UseDualStack": true, - "Region": "cn-north-1" + "UseFIPS": false } }, { @@ -1359,9 +1365,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-gov-east-1", "UseDualStack": false, - "Region": "us-gov-east-1" + "UseFIPS": false } }, { @@ -1372,9 +1378,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-gov-east-1", "UseDualStack": false, - "Region": "us-gov-east-1" + "UseFIPS": true } }, { @@ -1385,9 +1391,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-gov-west-1", "UseDualStack": false, - "Region": "us-gov-west-1" + "UseFIPS": false } }, { @@ -1398,9 +1404,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-gov-west-1", "UseDualStack": false, - "Region": "us-gov-west-1" + "UseFIPS": true } }, { @@ -1411,9 +1417,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-gov-east-1", "UseDualStack": true, - "Region": "us-gov-east-1" + "UseFIPS": true } }, { @@ -1424,9 +1430,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-gov-east-1", "UseDualStack": true, - "Region": "us-gov-east-1" + "UseFIPS": false } }, { @@ -1435,9 +1441,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, + "Region": "us-iso-east-1", "UseDualStack": true, - "Region": "us-iso-east-1" + "UseFIPS": true } }, { @@ -1448,9 +1454,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-iso-east-1", "UseDualStack": false, - "Region": "us-iso-east-1" + "UseFIPS": true } }, { @@ -1459,9 +1465,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, + "Region": "us-iso-east-1", "UseDualStack": true, - "Region": "us-iso-east-1" + "UseFIPS": false } }, { @@ -1472,9 +1478,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-iso-east-1", "UseDualStack": false, - "Region": "us-iso-east-1" + "UseFIPS": false } }, { @@ -1483,9 +1489,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, + "Region": "us-isob-east-1", "UseDualStack": true, - "Region": "us-isob-east-1" + "UseFIPS": true } }, { @@ -1496,9 +1502,9 @@ } }, "params": { - "UseFIPS": true, + "Region": "us-isob-east-1", "UseDualStack": false, - "Region": "us-isob-east-1" + "UseFIPS": true } }, { @@ -1507,9 +1513,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, + "Region": "us-isob-east-1", "UseDualStack": true, - "Region": "us-isob-east-1" + "UseFIPS": false } }, { @@ -1520,9 +1526,9 @@ } }, "params": { - "UseFIPS": false, + "Region": "us-isob-east-1", "UseDualStack": false, - "Region": "us-isob-east-1" + "UseFIPS": false } }, { @@ -1533,9 +1539,9 @@ } }, "params": { - "UseFIPS": false, - "UseDualStack": false, "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -1547,8 +1553,8 @@ } }, "params": { - "UseFIPS": false, "UseDualStack": false, + "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -1558,9 +1564,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseFIPS": true, - "UseDualStack": false, "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": true, "Endpoint": "https://example.com" } }, @@ -1570,9 +1576,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseFIPS": false, - "UseDualStack": true, "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -1716,7 +1722,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists summary information about the retained messages stored for the account.

\n

This action returns only the topic names of the retained messages. It doesn't \n return any message payloads. Although this action doesn't return a message payload,\n it can still incur messaging costs.

\n

To get the message payload of a retained message, call\n GetRetainedMessage\n with the topic name of the retained message.

\n

Requires permission to access the ListRetainedMessages action.

\n

For more information about messaging costs, see Amazon Web Services IoT Core\n pricing - Messaging.

", + "smithy.api#documentation": "

Lists summary information about the retained messages stored for the account.

\n

This action returns only the topic names of the retained messages. It doesn't \n return any message payloads. Although this action doesn't return a message payload,\n it can still incur messaging costs.

\n

To get the message payload of a retained message, call\n GetRetainedMessage\n with the topic name of the retained message.

\n

Requires permission to access the ListRetainedMessages action.

\n

For more information about messaging costs, see Amazon Web Services IoT Core\n pricing - Messaging.

", "smithy.api#http": { "method": "GET", "uri": "/retainedMessage", @@ -2251,6 +2257,9 @@ "smithy.api#output": {} } }, + "com.amazonaws.iotdataplane#UserPropertiesBlob": { + "type": "blob" + }, "com.amazonaws.iotdataplane#errorMessage": { "type": "string" }