diff --git a/VERSION b/VERSION index 722ea0b8d1e..cb8c10b181f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.11.230 \ No newline at end of file +1.11.231 \ No newline at end of file diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/GlueClient.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/GlueClient.h index fed035de156..18066448ec3 100644 --- a/generated/src/aws-cpp-sdk-glue/include/aws/glue/GlueClient.h +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/GlueClient.h @@ -729,8 +729,9 @@ namespace Glue } /** - *

Creates a connection definition in the Data Catalog.

See Also:

- * Creates a connection definition in the Data Catalog.

Connections used + * for creating federated resources require the IAM + * glue:PassConnection permission.

See Also:

AWS * API Reference

*/ diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionMetadataRequest.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionMetadataRequest.h index 21f1890b246..5c8b1fe2517 100644 --- a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionMetadataRequest.h +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionMetadataRequest.h @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -37,6 +38,55 @@ namespace Model AWS_GLUE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline const Aws::String& GetRegion() const{ return m_region; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionMetadataRequest& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionMetadataRequest& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionMetadataRequest& WithRegion(const char* value) { SetRegion(value); return *this;} + + /** *

The catalog ID where the partition resides.

*/ @@ -277,8 +327,54 @@ namespace Model */ inline GetUnfilteredPartitionMetadataRequest& AddSupportedPermissionTypes(PermissionType&& value) { m_supportedPermissionTypesHasBeenSet = true; m_supportedPermissionTypes.push_back(std::move(value)); return *this; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline const QuerySessionContext& GetQuerySessionContext() const{ return m_querySessionContext; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline bool QuerySessionContextHasBeenSet() const { return m_querySessionContextHasBeenSet; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(const QuerySessionContext& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = value; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(QuerySessionContext&& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = std::move(value); } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredPartitionMetadataRequest& WithQuerySessionContext(const QuerySessionContext& value) { SetQuerySessionContext(value); return *this;} + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredPartitionMetadataRequest& WithQuerySessionContext(QuerySessionContext&& value) { SetQuerySessionContext(std::move(value)); return *this;} + private: + Aws::String m_region; + bool m_regionHasBeenSet = false; + Aws::String m_catalogId; bool m_catalogIdHasBeenSet = false; @@ -296,6 +392,9 @@ namespace Model Aws::Vector m_supportedPermissionTypes; bool m_supportedPermissionTypesHasBeenSet = false; + + QuerySessionContext m_querySessionContext; + bool m_querySessionContextHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionsMetadataRequest.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionsMetadataRequest.h index 5116eb3dec0..82ca2b274fd 100644 --- a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionsMetadataRequest.h +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredPartitionsMetadataRequest.h @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -38,6 +39,55 @@ namespace Model AWS_GLUE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline const Aws::String& GetRegion() const{ return m_region; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionsMetadataRequest& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionsMetadataRequest& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredPartitionsMetadataRequest& WithRegion(const char* value) { SetRegion(value); return *this;} + + /** *

The ID of the Data Catalog where the partitions in question reside. If none * is provided, the AWS account ID is used by default.

@@ -614,8 +664,54 @@ namespace Model */ inline GetUnfilteredPartitionsMetadataRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline const QuerySessionContext& GetQuerySessionContext() const{ return m_querySessionContext; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline bool QuerySessionContextHasBeenSet() const { return m_querySessionContextHasBeenSet; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(const QuerySessionContext& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = value; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(QuerySessionContext&& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = std::move(value); } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredPartitionsMetadataRequest& WithQuerySessionContext(const QuerySessionContext& value) { SetQuerySessionContext(value); return *this;} + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredPartitionsMetadataRequest& WithQuerySessionContext(QuerySessionContext&& value) { SetQuerySessionContext(std::move(value)); return *this;} + private: + Aws::String m_region; + bool m_regionHasBeenSet = false; + Aws::String m_catalogId; bool m_catalogIdHasBeenSet = false; @@ -642,6 +738,9 @@ namespace Model int m_maxResults; bool m_maxResultsHasBeenSet = false; + + QuerySessionContext m_querySessionContext; + bool m_querySessionContextHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataRequest.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataRequest.h index dfff9448957..41e203d7161 100644 --- a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataRequest.h +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataRequest.h @@ -9,7 +9,10 @@ #include #include #include +#include +#include #include +#include #include namespace Aws @@ -37,6 +40,55 @@ namespace Model AWS_GLUE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline const Aws::String& GetRegion() const{ return m_region; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredTableMetadataRequest& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredTableMetadataRequest& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} + + /** + *

Specified only if the base tables belong to a different Amazon Web Services + * Region.

+ */ + inline GetUnfilteredTableMetadataRequest& WithRegion(const char* value) { SetRegion(value); return *this;} + + /** *

The catalog ID where the table resides.

*/ @@ -239,8 +291,140 @@ namespace Model */ inline GetUnfilteredTableMetadataRequest& AddSupportedPermissionTypes(PermissionType&& value) { m_supportedPermissionTypesHasBeenSet = true; m_supportedPermissionTypes.push_back(std::move(value)); return *this; } + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline const SupportedDialect& GetSupportedDialect() const{ return m_supportedDialect; } + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline bool SupportedDialectHasBeenSet() const { return m_supportedDialectHasBeenSet; } + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline void SetSupportedDialect(const SupportedDialect& value) { m_supportedDialectHasBeenSet = true; m_supportedDialect = value; } + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline void SetSupportedDialect(SupportedDialect&& value) { m_supportedDialectHasBeenSet = true; m_supportedDialect = std::move(value); } + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline GetUnfilteredTableMetadataRequest& WithSupportedDialect(const SupportedDialect& value) { SetSupportedDialect(value); return *this;} + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

+ */ + inline GetUnfilteredTableMetadataRequest& WithSupportedDialect(SupportedDialect&& value) { SetSupportedDialect(std::move(value)); return *this;} + + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline const Aws::Vector& GetPermissions() const{ return m_permissions; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline void SetPermissions(const Aws::Vector& value) { m_permissionsHasBeenSet = true; m_permissions = value; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline void SetPermissions(Aws::Vector&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataRequest& WithPermissions(const Aws::Vector& value) { SetPermissions(value); return *this;} + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataRequest& WithPermissions(Aws::Vector&& value) { SetPermissions(std::move(value)); return *this;} + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataRequest& AddPermissions(const Permission& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataRequest& AddPermissions(Permission&& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(std::move(value)); return *this; } + + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline const QuerySessionContext& GetQuerySessionContext() const{ return m_querySessionContext; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline bool QuerySessionContextHasBeenSet() const { return m_querySessionContextHasBeenSet; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(const QuerySessionContext& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = value; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(QuerySessionContext&& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = std::move(value); } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredTableMetadataRequest& WithQuerySessionContext(const QuerySessionContext& value) { SetQuerySessionContext(value); return *this;} + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetUnfilteredTableMetadataRequest& WithQuerySessionContext(QuerySessionContext&& value) { SetQuerySessionContext(std::move(value)); return *this;} + private: + Aws::String m_region; + bool m_regionHasBeenSet = false; + Aws::String m_catalogId; bool m_catalogIdHasBeenSet = false; @@ -255,6 +439,15 @@ namespace Model Aws::Vector m_supportedPermissionTypes; bool m_supportedPermissionTypesHasBeenSet = false; + + SupportedDialect m_supportedDialect; + bool m_supportedDialectHasBeenSet = false; + + Aws::Vector m_permissions; + bool m_permissionsHasBeenSet = false; + + QuerySessionContext m_querySessionContext; + bool m_querySessionContextHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataResult.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataResult.h index 35aee5fcac5..d908a46de48 100644 --- a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataResult.h +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/GetUnfilteredTableMetadataResult.h @@ -9,6 +9,7 @@ #include #include #include +#include #include namespace Aws @@ -157,6 +158,128 @@ namespace Model inline GetUnfilteredTableMetadataResult& AddCellFilters(ColumnRowFilter&& value) { m_cellFilters.push_back(std::move(value)); return *this; } + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline const Aws::String& GetQueryAuthorizationId() const{ return m_queryAuthorizationId; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const Aws::String& value) { m_queryAuthorizationId = value; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(Aws::String&& value) { m_queryAuthorizationId = std::move(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const char* value) { m_queryAuthorizationId.assign(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline GetUnfilteredTableMetadataResult& WithQueryAuthorizationId(const Aws::String& value) { SetQueryAuthorizationId(value); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline GetUnfilteredTableMetadataResult& WithQueryAuthorizationId(Aws::String&& value) { SetQueryAuthorizationId(std::move(value)); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline GetUnfilteredTableMetadataResult& WithQueryAuthorizationId(const char* value) { SetQueryAuthorizationId(value); return *this;} + + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline void SetResourceArn(const Aws::String& value) { m_resourceArn = value; } + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline void SetResourceArn(Aws::String&& value) { m_resourceArn = std::move(value); } + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline void SetResourceArn(const char* value) { m_resourceArn.assign(value); } + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline GetUnfilteredTableMetadataResult& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline GetUnfilteredTableMetadataResult& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} + + /** + *

The resource ARN of the parent resource extracted from the request.

+ */ + inline GetUnfilteredTableMetadataResult& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} + + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline const Aws::Vector& GetPermissions() const{ return m_permissions; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline void SetPermissions(const Aws::Vector& value) { m_permissions = value; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline void SetPermissions(Aws::Vector&& value) { m_permissions = std::move(value); } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataResult& WithPermissions(const Aws::Vector& value) { SetPermissions(value); return *this;} + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataResult& WithPermissions(Aws::Vector&& value) { SetPermissions(std::move(value)); return *this;} + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataResult& AddPermissions(const Permission& value) { m_permissions.push_back(value); return *this; } + + /** + *

The Lake Formation data permissions of the caller on the table. Used to + * authorize the call when no view context is found.

+ */ + inline GetUnfilteredTableMetadataResult& AddPermissions(Permission&& value) { m_permissions.push_back(std::move(value)); return *this; } + + inline const Aws::String& GetRequestId() const{ return m_requestId; } @@ -188,6 +311,12 @@ namespace Model Aws::Vector m_cellFilters; + Aws::String m_queryAuthorizationId; + + Aws::String m_resourceArn; + + Aws::Vector m_permissions; + Aws::String m_requestId; }; diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/QuerySessionContext.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/QuerySessionContext.h new file mode 100644 index 00000000000..1eaba80de07 --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/QuerySessionContext.h @@ -0,0 +1,292 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Glue +{ +namespace Model +{ + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

See Also:

+ * AWS + * API Reference

+ */ + class QuerySessionContext + { + public: + AWS_GLUE_API QuerySessionContext(); + AWS_GLUE_API QuerySessionContext(Aws::Utils::Json::JsonView jsonValue); + AWS_GLUE_API QuerySessionContext& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline const Aws::String& GetQueryId() const{ return m_queryId; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline bool QueryIdHasBeenSet() const { return m_queryIdHasBeenSet; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(const Aws::String& value) { m_queryIdHasBeenSet = true; m_queryId = value; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(Aws::String&& value) { m_queryIdHasBeenSet = true; m_queryId = std::move(value); } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(const char* value) { m_queryIdHasBeenSet = true; m_queryId.assign(value); } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(const Aws::String& value) { SetQueryId(value); return *this;} + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(Aws::String&& value) { SetQueryId(std::move(value)); return *this;} + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(const char* value) { SetQueryId(value); return *this;} + + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline const Aws::Utils::DateTime& GetQueryStartTime() const{ return m_queryStartTime; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline bool QueryStartTimeHasBeenSet() const { return m_queryStartTimeHasBeenSet; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline void SetQueryStartTime(const Aws::Utils::DateTime& value) { m_queryStartTimeHasBeenSet = true; m_queryStartTime = value; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline void SetQueryStartTime(Aws::Utils::DateTime&& value) { m_queryStartTimeHasBeenSet = true; m_queryStartTime = std::move(value); } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline QuerySessionContext& WithQueryStartTime(const Aws::Utils::DateTime& value) { SetQueryStartTime(value); return *this;} + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline QuerySessionContext& WithQueryStartTime(Aws::Utils::DateTime&& value) { SetQueryStartTime(std::move(value)); return *this;} + + + /** + *

An identifier string for the consumer cluster.

+ */ + inline const Aws::String& GetClusterId() const{ return m_clusterId; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline bool ClusterIdHasBeenSet() const { return m_clusterIdHasBeenSet; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(const Aws::String& value) { m_clusterIdHasBeenSet = true; m_clusterId = value; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(Aws::String&& value) { m_clusterIdHasBeenSet = true; m_clusterId = std::move(value); } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(const char* value) { m_clusterIdHasBeenSet = true; m_clusterId.assign(value); } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(const Aws::String& value) { SetClusterId(value); return *this;} + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(Aws::String&& value) { SetClusterId(std::move(value)); return *this;} + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(const char* value) { SetClusterId(value); return *this;} + + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline const Aws::String& GetQueryAuthorizationId() const{ return m_queryAuthorizationId; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline bool QueryAuthorizationIdHasBeenSet() const { return m_queryAuthorizationIdHasBeenSet; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const Aws::String& value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId = value; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(Aws::String&& value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId = std::move(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const char* value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId.assign(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(const Aws::String& value) { SetQueryAuthorizationId(value); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(Aws::String&& value) { SetQueryAuthorizationId(std::move(value)); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(const char* value) { SetQueryAuthorizationId(value); return *this;} + + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline const Aws::Map& GetAdditionalContext() const{ return m_additionalContext; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline bool AdditionalContextHasBeenSet() const { return m_additionalContextHasBeenSet; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline void SetAdditionalContext(const Aws::Map& value) { m_additionalContextHasBeenSet = true; m_additionalContext = value; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline void SetAdditionalContext(Aws::Map&& value) { m_additionalContextHasBeenSet = true; m_additionalContext = std::move(value); } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& WithAdditionalContext(const Aws::Map& value) { SetAdditionalContext(value); return *this;} + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& WithAdditionalContext(Aws::Map&& value) { SetAdditionalContext(std::move(value)); return *this;} + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const Aws::String& key, const Aws::String& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, const Aws::String& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const Aws::String& key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const char* key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, const char* value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const char* key, const char* value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, value); return *this; } + + private: + + Aws::String m_queryId; + bool m_queryIdHasBeenSet = false; + + Aws::Utils::DateTime m_queryStartTime; + bool m_queryStartTimeHasBeenSet = false; + + Aws::String m_clusterId; + bool m_clusterIdHasBeenSet = false; + + Aws::String m_queryAuthorizationId; + bool m_queryAuthorizationIdHasBeenSet = false; + + Aws::Map m_additionalContext; + bool m_additionalContextHasBeenSet = false; + }; + +} // namespace Model +} // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/SupportedDialect.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/SupportedDialect.h new file mode 100644 index 00000000000..74656a23e4a --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/SupportedDialect.h @@ -0,0 +1,124 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Glue +{ +namespace Model +{ + + /** + *

A structure specifying the dialect and dialect version used by the query + * engine.

See Also:

AWS + * API Reference

+ */ + class SupportedDialect + { + public: + AWS_GLUE_API SupportedDialect(); + AWS_GLUE_API SupportedDialect(Aws::Utils::Json::JsonView jsonValue); + AWS_GLUE_API SupportedDialect& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The dialect of the query engine.

+ */ + inline const ViewDialect& GetDialect() const{ return m_dialect; } + + /** + *

The dialect of the query engine.

+ */ + inline bool DialectHasBeenSet() const { return m_dialectHasBeenSet; } + + /** + *

The dialect of the query engine.

+ */ + inline void SetDialect(const ViewDialect& value) { m_dialectHasBeenSet = true; m_dialect = value; } + + /** + *

The dialect of the query engine.

+ */ + inline void SetDialect(ViewDialect&& value) { m_dialectHasBeenSet = true; m_dialect = std::move(value); } + + /** + *

The dialect of the query engine.

+ */ + inline SupportedDialect& WithDialect(const ViewDialect& value) { SetDialect(value); return *this;} + + /** + *

The dialect of the query engine.

+ */ + inline SupportedDialect& WithDialect(ViewDialect&& value) { SetDialect(std::move(value)); return *this;} + + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline const Aws::String& GetDialectVersion() const{ return m_dialectVersion; } + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline bool DialectVersionHasBeenSet() const { return m_dialectVersionHasBeenSet; } + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline void SetDialectVersion(const Aws::String& value) { m_dialectVersionHasBeenSet = true; m_dialectVersion = value; } + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline void SetDialectVersion(Aws::String&& value) { m_dialectVersionHasBeenSet = true; m_dialectVersion = std::move(value); } + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline void SetDialectVersion(const char* value) { m_dialectVersionHasBeenSet = true; m_dialectVersion.assign(value); } + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline SupportedDialect& WithDialectVersion(const Aws::String& value) { SetDialectVersion(value); return *this;} + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline SupportedDialect& WithDialectVersion(Aws::String&& value) { SetDialectVersion(std::move(value)); return *this;} + + /** + *

The version of the dialect of the query engine. For example, 3.0.0.

+ */ + inline SupportedDialect& WithDialectVersion(const char* value) { SetDialectVersion(value); return *this;} + + private: + + ViewDialect m_dialect; + bool m_dialectHasBeenSet = false; + + Aws::String m_dialectVersion; + bool m_dialectVersionHasBeenSet = false; + }; + +} // namespace Model +} // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/ViewDialect.h b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/ViewDialect.h new file mode 100644 index 00000000000..4f8cd5be651 --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/include/aws/glue/model/ViewDialect.h @@ -0,0 +1,32 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace Glue +{ +namespace Model +{ + enum class ViewDialect + { + NOT_SET, + REDSHIFT, + ATHENA, + SPARK + }; + +namespace ViewDialectMapper +{ +AWS_GLUE_API ViewDialect GetViewDialectForName(const Aws::String& name); + +AWS_GLUE_API Aws::String GetNameForViewDialect(ViewDialect value); +} // namespace ViewDialectMapper +} // namespace Model +} // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionMetadataRequest.cpp b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionMetadataRequest.cpp index 13feb25225f..8e8327d5acd 100644 --- a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionMetadataRequest.cpp +++ b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionMetadataRequest.cpp @@ -13,12 +13,14 @@ using namespace Aws::Utils::Json; using namespace Aws::Utils; GetUnfilteredPartitionMetadataRequest::GetUnfilteredPartitionMetadataRequest() : + m_regionHasBeenSet(false), m_catalogIdHasBeenSet(false), m_databaseNameHasBeenSet(false), m_tableNameHasBeenSet(false), m_partitionValuesHasBeenSet(false), m_auditContextHasBeenSet(false), - m_supportedPermissionTypesHasBeenSet(false) + m_supportedPermissionTypesHasBeenSet(false), + m_querySessionContextHasBeenSet(false) { } @@ -26,6 +28,12 @@ Aws::String GetUnfilteredPartitionMetadataRequest::SerializePayload() const { JsonValue payload; + if(m_regionHasBeenSet) + { + payload.WithString("Region", m_region); + + } + if(m_catalogIdHasBeenSet) { payload.WithString("CatalogId", m_catalogId); @@ -72,6 +80,12 @@ Aws::String GetUnfilteredPartitionMetadataRequest::SerializePayload() const } + if(m_querySessionContextHasBeenSet) + { + payload.WithObject("QuerySessionContext", m_querySessionContext.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionsMetadataRequest.cpp b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionsMetadataRequest.cpp index 1c9c7dde392..e8264325765 100644 --- a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionsMetadataRequest.cpp +++ b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredPartitionsMetadataRequest.cpp @@ -13,6 +13,7 @@ using namespace Aws::Utils::Json; using namespace Aws::Utils; GetUnfilteredPartitionsMetadataRequest::GetUnfilteredPartitionsMetadataRequest() : + m_regionHasBeenSet(false), m_catalogIdHasBeenSet(false), m_databaseNameHasBeenSet(false), m_tableNameHasBeenSet(false), @@ -22,7 +23,8 @@ GetUnfilteredPartitionsMetadataRequest::GetUnfilteredPartitionsMetadataRequest() m_nextTokenHasBeenSet(false), m_segmentHasBeenSet(false), m_maxResults(0), - m_maxResultsHasBeenSet(false) + m_maxResultsHasBeenSet(false), + m_querySessionContextHasBeenSet(false) { } @@ -30,6 +32,12 @@ Aws::String GetUnfilteredPartitionsMetadataRequest::SerializePayload() const { JsonValue payload; + if(m_regionHasBeenSet) + { + payload.WithString("Region", m_region); + + } + if(m_catalogIdHasBeenSet) { payload.WithString("CatalogId", m_catalogId); @@ -89,6 +97,12 @@ Aws::String GetUnfilteredPartitionsMetadataRequest::SerializePayload() const } + if(m_querySessionContextHasBeenSet) + { + payload.WithObject("QuerySessionContext", m_querySessionContext.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataRequest.cpp b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataRequest.cpp index 30f78523b63..13920c8fe4e 100644 --- a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataRequest.cpp +++ b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataRequest.cpp @@ -13,11 +13,15 @@ using namespace Aws::Utils::Json; using namespace Aws::Utils; GetUnfilteredTableMetadataRequest::GetUnfilteredTableMetadataRequest() : + m_regionHasBeenSet(false), m_catalogIdHasBeenSet(false), m_databaseNameHasBeenSet(false), m_nameHasBeenSet(false), m_auditContextHasBeenSet(false), - m_supportedPermissionTypesHasBeenSet(false) + m_supportedPermissionTypesHasBeenSet(false), + m_supportedDialectHasBeenSet(false), + m_permissionsHasBeenSet(false), + m_querySessionContextHasBeenSet(false) { } @@ -25,6 +29,12 @@ Aws::String GetUnfilteredTableMetadataRequest::SerializePayload() const { JsonValue payload; + if(m_regionHasBeenSet) + { + payload.WithString("Region", m_region); + + } + if(m_catalogIdHasBeenSet) { payload.WithString("CatalogId", m_catalogId); @@ -60,6 +70,29 @@ Aws::String GetUnfilteredTableMetadataRequest::SerializePayload() const } + if(m_supportedDialectHasBeenSet) + { + payload.WithObject("SupportedDialect", m_supportedDialect.Jsonize()); + + } + + if(m_permissionsHasBeenSet) + { + Aws::Utils::Array permissionsJsonList(m_permissions.size()); + for(unsigned permissionsIndex = 0; permissionsIndex < permissionsJsonList.GetLength(); ++permissionsIndex) + { + permissionsJsonList[permissionsIndex].AsString(PermissionMapper::GetNameForPermission(m_permissions[permissionsIndex])); + } + payload.WithArray("Permissions", std::move(permissionsJsonList)); + + } + + if(m_querySessionContextHasBeenSet) + { + payload.WithObject("QuerySessionContext", m_querySessionContext.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataResult.cpp b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataResult.cpp index 233f22f9ae6..d376802142d 100644 --- a/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataResult.cpp +++ b/generated/src/aws-cpp-sdk-glue/source/model/GetUnfilteredTableMetadataResult.cpp @@ -61,6 +61,27 @@ GetUnfilteredTableMetadataResult& GetUnfilteredTableMetadataResult::operator =(c } } + if(jsonValue.ValueExists("QueryAuthorizationId")) + { + m_queryAuthorizationId = jsonValue.GetString("QueryAuthorizationId"); + + } + + if(jsonValue.ValueExists("ResourceArn")) + { + m_resourceArn = jsonValue.GetString("ResourceArn"); + + } + + if(jsonValue.ValueExists("Permissions")) + { + Aws::Utils::Array permissionsJsonList = jsonValue.GetArray("Permissions"); + for(unsigned permissionsIndex = 0; permissionsIndex < permissionsJsonList.GetLength(); ++permissionsIndex) + { + m_permissions.push_back(PermissionMapper::GetPermissionForName(permissionsJsonList[permissionsIndex].AsString())); + } + } + const auto& headers = result.GetHeaderValueCollection(); const auto& requestIdIter = headers.find("x-amzn-requestid"); diff --git a/generated/src/aws-cpp-sdk-glue/source/model/QuerySessionContext.cpp b/generated/src/aws-cpp-sdk-glue/source/model/QuerySessionContext.cpp new file mode 100644 index 00000000000..636d9c51341 --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/source/model/QuerySessionContext.cpp @@ -0,0 +1,126 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Glue +{ +namespace Model +{ + +QuerySessionContext::QuerySessionContext() : + m_queryIdHasBeenSet(false), + m_queryStartTimeHasBeenSet(false), + m_clusterIdHasBeenSet(false), + m_queryAuthorizationIdHasBeenSet(false), + m_additionalContextHasBeenSet(false) +{ +} + +QuerySessionContext::QuerySessionContext(JsonView jsonValue) : + m_queryIdHasBeenSet(false), + m_queryStartTimeHasBeenSet(false), + m_clusterIdHasBeenSet(false), + m_queryAuthorizationIdHasBeenSet(false), + m_additionalContextHasBeenSet(false) +{ + *this = jsonValue; +} + +QuerySessionContext& QuerySessionContext::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("QueryId")) + { + m_queryId = jsonValue.GetString("QueryId"); + + m_queryIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("QueryStartTime")) + { + m_queryStartTime = jsonValue.GetDouble("QueryStartTime"); + + m_queryStartTimeHasBeenSet = true; + } + + if(jsonValue.ValueExists("ClusterId")) + { + m_clusterId = jsonValue.GetString("ClusterId"); + + m_clusterIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("QueryAuthorizationId")) + { + m_queryAuthorizationId = jsonValue.GetString("QueryAuthorizationId"); + + m_queryAuthorizationIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("AdditionalContext")) + { + Aws::Map additionalContextJsonMap = jsonValue.GetObject("AdditionalContext").GetAllObjects(); + for(auto& additionalContextItem : additionalContextJsonMap) + { + m_additionalContext[additionalContextItem.first] = additionalContextItem.second.AsString(); + } + m_additionalContextHasBeenSet = true; + } + + return *this; +} + +JsonValue QuerySessionContext::Jsonize() const +{ + JsonValue payload; + + if(m_queryIdHasBeenSet) + { + payload.WithString("QueryId", m_queryId); + + } + + if(m_queryStartTimeHasBeenSet) + { + payload.WithDouble("QueryStartTime", m_queryStartTime.SecondsWithMSPrecision()); + } + + if(m_clusterIdHasBeenSet) + { + payload.WithString("ClusterId", m_clusterId); + + } + + if(m_queryAuthorizationIdHasBeenSet) + { + payload.WithString("QueryAuthorizationId", m_queryAuthorizationId); + + } + + if(m_additionalContextHasBeenSet) + { + JsonValue additionalContextJsonMap; + for(auto& additionalContextItem : m_additionalContext) + { + additionalContextJsonMap.WithString(additionalContextItem.first, additionalContextItem.second); + } + payload.WithObject("AdditionalContext", std::move(additionalContextJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-glue/source/model/SupportedDialect.cpp b/generated/src/aws-cpp-sdk-glue/source/model/SupportedDialect.cpp new file mode 100644 index 00000000000..aacb9cfd0c6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/source/model/SupportedDialect.cpp @@ -0,0 +1,75 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Glue +{ +namespace Model +{ + +SupportedDialect::SupportedDialect() : + m_dialect(ViewDialect::NOT_SET), + m_dialectHasBeenSet(false), + m_dialectVersionHasBeenSet(false) +{ +} + +SupportedDialect::SupportedDialect(JsonView jsonValue) : + m_dialect(ViewDialect::NOT_SET), + m_dialectHasBeenSet(false), + m_dialectVersionHasBeenSet(false) +{ + *this = jsonValue; +} + +SupportedDialect& SupportedDialect::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("Dialect")) + { + m_dialect = ViewDialectMapper::GetViewDialectForName(jsonValue.GetString("Dialect")); + + m_dialectHasBeenSet = true; + } + + if(jsonValue.ValueExists("DialectVersion")) + { + m_dialectVersion = jsonValue.GetString("DialectVersion"); + + m_dialectVersionHasBeenSet = true; + } + + return *this; +} + +JsonValue SupportedDialect::Jsonize() const +{ + JsonValue payload; + + if(m_dialectHasBeenSet) + { + payload.WithString("Dialect", ViewDialectMapper::GetNameForViewDialect(m_dialect)); + } + + if(m_dialectVersionHasBeenSet) + { + payload.WithString("DialectVersion", m_dialectVersion); + + } + + return payload; +} + +} // namespace Model +} // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-glue/source/model/ViewDialect.cpp b/generated/src/aws-cpp-sdk-glue/source/model/ViewDialect.cpp new file mode 100644 index 00000000000..cd32fbb86b6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-glue/source/model/ViewDialect.cpp @@ -0,0 +1,79 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace Glue + { + namespace Model + { + namespace ViewDialectMapper + { + + static const int REDSHIFT_HASH = HashingUtils::HashString("REDSHIFT"); + static const int ATHENA_HASH = HashingUtils::HashString("ATHENA"); + static const int SPARK_HASH = HashingUtils::HashString("SPARK"); + + + ViewDialect GetViewDialectForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == REDSHIFT_HASH) + { + return ViewDialect::REDSHIFT; + } + else if (hashCode == ATHENA_HASH) + { + return ViewDialect::ATHENA; + } + else if (hashCode == SPARK_HASH) + { + return ViewDialect::SPARK; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return ViewDialect::NOT_SET; + } + + Aws::String GetNameForViewDialect(ViewDialect enumValue) + { + switch(enumValue) + { + case ViewDialect::NOT_SET: + return {}; + case ViewDialect::REDSHIFT: + return "REDSHIFT"; + case ViewDialect::ATHENA: + return "ATHENA"; + case ViewDialect::SPARK: + return "SPARK"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace ViewDialectMapper + } // namespace Model + } // namespace Glue +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/CreateLakeFormationIdentityCenterConfigurationRequest.h b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/CreateLakeFormationIdentityCenterConfigurationRequest.h index 4c7858649d7..35752d6a369 100644 --- a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/CreateLakeFormationIdentityCenterConfigurationRequest.h +++ b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/CreateLakeFormationIdentityCenterConfigurationRequest.h @@ -165,37 +165,37 @@ namespace Model /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline const ExternalFilteringConfiguration& GetExternalFiltering() const{ return m_externalFiltering; } /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline bool ExternalFilteringHasBeenSet() const { return m_externalFilteringHasBeenSet; } /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline void SetExternalFiltering(const ExternalFilteringConfiguration& value) { m_externalFilteringHasBeenSet = true; m_externalFiltering = value; } /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline void SetExternalFiltering(ExternalFilteringConfiguration&& value) { m_externalFilteringHasBeenSet = true; m_externalFiltering = std::move(value); } /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline CreateLakeFormationIdentityCenterConfigurationRequest& WithExternalFiltering(const ExternalFilteringConfiguration& value) { SetExternalFiltering(value); return *this;} /** *

A list of the account IDs of Amazon Web Services accounts of third-party - * applications that are allowed to to access data managed by Lake Formation.

+ * applications that are allowed to access data managed by Lake Formation.

*/ inline CreateLakeFormationIdentityCenterConfigurationRequest& WithExternalFiltering(ExternalFilteringConfiguration&& value) { SetExternalFiltering(std::move(value)); return *this;} diff --git a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsRequest.h b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsRequest.h index 90e57399808..435839595ea 100644 --- a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsRequest.h +++ b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsRequest.h @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -244,6 +245,90 @@ namespace Model */ inline GetTemporaryGlueTableCredentialsRequest& AddSupportedPermissionTypes(PermissionType&& value) { m_supportedPermissionTypesHasBeenSet = true; m_supportedPermissionTypes.push_back(std::move(value)); return *this; } + + /** + *

The Amazon S3 path for the table.

+ */ + inline const Aws::String& GetS3Path() const{ return m_s3Path; } + + /** + *

The Amazon S3 path for the table.

+ */ + inline bool S3PathHasBeenSet() const { return m_s3PathHasBeenSet; } + + /** + *

The Amazon S3 path for the table.

+ */ + inline void SetS3Path(const Aws::String& value) { m_s3PathHasBeenSet = true; m_s3Path = value; } + + /** + *

The Amazon S3 path for the table.

+ */ + inline void SetS3Path(Aws::String&& value) { m_s3PathHasBeenSet = true; m_s3Path = std::move(value); } + + /** + *

The Amazon S3 path for the table.

+ */ + inline void SetS3Path(const char* value) { m_s3PathHasBeenSet = true; m_s3Path.assign(value); } + + /** + *

The Amazon S3 path for the table.

+ */ + inline GetTemporaryGlueTableCredentialsRequest& WithS3Path(const Aws::String& value) { SetS3Path(value); return *this;} + + /** + *

The Amazon S3 path for the table.

+ */ + inline GetTemporaryGlueTableCredentialsRequest& WithS3Path(Aws::String&& value) { SetS3Path(std::move(value)); return *this;} + + /** + *

The Amazon S3 path for the table.

+ */ + inline GetTemporaryGlueTableCredentialsRequest& WithS3Path(const char* value) { SetS3Path(value); return *this;} + + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline const QuerySessionContext& GetQuerySessionContext() const{ return m_querySessionContext; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline bool QuerySessionContextHasBeenSet() const { return m_querySessionContextHasBeenSet; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(const QuerySessionContext& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = value; } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline void SetQuerySessionContext(QuerySessionContext&& value) { m_querySessionContextHasBeenSet = true; m_querySessionContext = std::move(value); } + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetTemporaryGlueTableCredentialsRequest& WithQuerySessionContext(const QuerySessionContext& value) { SetQuerySessionContext(value); return *this;} + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

+ */ + inline GetTemporaryGlueTableCredentialsRequest& WithQuerySessionContext(QuerySessionContext&& value) { SetQuerySessionContext(std::move(value)); return *this;} + private: Aws::String m_tableArn; @@ -260,6 +345,12 @@ namespace Model Aws::Vector m_supportedPermissionTypes; bool m_supportedPermissionTypesHasBeenSet = false; + + Aws::String m_s3Path; + bool m_s3PathHasBeenSet = false; + + QuerySessionContext m_querySessionContext; + bool m_querySessionContextHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsResult.h b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsResult.h index 567648c5836..7063c20aa12 100644 --- a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsResult.h +++ b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/GetTemporaryGlueTableCredentialsResult.h @@ -7,6 +7,7 @@ #include #include #include +#include #include namespace Aws @@ -167,6 +168,47 @@ namespace Model inline GetTemporaryGlueTableCredentialsResult& WithExpiration(Aws::Utils::DateTime&& value) { SetExpiration(std::move(value)); return *this;} + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline const Aws::Vector& GetVendedS3Path() const{ return m_vendedS3Path; } + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline void SetVendedS3Path(const Aws::Vector& value) { m_vendedS3Path = value; } + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline void SetVendedS3Path(Aws::Vector&& value) { m_vendedS3Path = std::move(value); } + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline GetTemporaryGlueTableCredentialsResult& WithVendedS3Path(const Aws::Vector& value) { SetVendedS3Path(value); return *this;} + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline GetTemporaryGlueTableCredentialsResult& WithVendedS3Path(Aws::Vector&& value) { SetVendedS3Path(std::move(value)); return *this;} + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline GetTemporaryGlueTableCredentialsResult& AddVendedS3Path(const Aws::String& value) { m_vendedS3Path.push_back(value); return *this; } + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline GetTemporaryGlueTableCredentialsResult& AddVendedS3Path(Aws::String&& value) { m_vendedS3Path.push_back(std::move(value)); return *this; } + + /** + *

The Amazon S3 path for the temporary credentials.

+ */ + inline GetTemporaryGlueTableCredentialsResult& AddVendedS3Path(const char* value) { m_vendedS3Path.push_back(value); return *this; } + + inline const Aws::String& GetRequestId() const{ return m_requestId; } @@ -198,6 +240,8 @@ namespace Model Aws::Utils::DateTime m_expiration; + Aws::Vector m_vendedS3Path; + Aws::String m_requestId; }; diff --git a/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/QuerySessionContext.h b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/QuerySessionContext.h new file mode 100644 index 00000000000..f11656bc16c --- /dev/null +++ b/generated/src/aws-cpp-sdk-lakeformation/include/aws/lakeformation/model/QuerySessionContext.h @@ -0,0 +1,292 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace LakeFormation +{ +namespace Model +{ + + /** + *

A structure used as a protocol between query engines and Lake Formation or + * Glue. Contains both a Lake Formation generated authorization identifier and + * information from the request's authorization context.

See Also:

+ * AWS + * API Reference

+ */ + class QuerySessionContext + { + public: + AWS_LAKEFORMATION_API QuerySessionContext(); + AWS_LAKEFORMATION_API QuerySessionContext(Aws::Utils::Json::JsonView jsonValue); + AWS_LAKEFORMATION_API QuerySessionContext& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_LAKEFORMATION_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline const Aws::String& GetQueryId() const{ return m_queryId; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline bool QueryIdHasBeenSet() const { return m_queryIdHasBeenSet; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(const Aws::String& value) { m_queryIdHasBeenSet = true; m_queryId = value; } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(Aws::String&& value) { m_queryIdHasBeenSet = true; m_queryId = std::move(value); } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline void SetQueryId(const char* value) { m_queryIdHasBeenSet = true; m_queryId.assign(value); } + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(const Aws::String& value) { SetQueryId(value); return *this;} + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(Aws::String&& value) { SetQueryId(std::move(value)); return *this;} + + /** + *

A unique identifier generated by the query engine for the query.

+ */ + inline QuerySessionContext& WithQueryId(const char* value) { SetQueryId(value); return *this;} + + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline const Aws::Utils::DateTime& GetQueryStartTime() const{ return m_queryStartTime; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline bool QueryStartTimeHasBeenSet() const { return m_queryStartTimeHasBeenSet; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline void SetQueryStartTime(const Aws::Utils::DateTime& value) { m_queryStartTimeHasBeenSet = true; m_queryStartTime = value; } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline void SetQueryStartTime(Aws::Utils::DateTime&& value) { m_queryStartTimeHasBeenSet = true; m_queryStartTime = std::move(value); } + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline QuerySessionContext& WithQueryStartTime(const Aws::Utils::DateTime& value) { SetQueryStartTime(value); return *this;} + + /** + *

A timestamp provided by the query engine for when the query started.

+ */ + inline QuerySessionContext& WithQueryStartTime(Aws::Utils::DateTime&& value) { SetQueryStartTime(std::move(value)); return *this;} + + + /** + *

An identifier string for the consumer cluster.

+ */ + inline const Aws::String& GetClusterId() const{ return m_clusterId; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline bool ClusterIdHasBeenSet() const { return m_clusterIdHasBeenSet; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(const Aws::String& value) { m_clusterIdHasBeenSet = true; m_clusterId = value; } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(Aws::String&& value) { m_clusterIdHasBeenSet = true; m_clusterId = std::move(value); } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline void SetClusterId(const char* value) { m_clusterIdHasBeenSet = true; m_clusterId.assign(value); } + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(const Aws::String& value) { SetClusterId(value); return *this;} + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(Aws::String&& value) { SetClusterId(std::move(value)); return *this;} + + /** + *

An identifier string for the consumer cluster.

+ */ + inline QuerySessionContext& WithClusterId(const char* value) { SetClusterId(value); return *this;} + + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline const Aws::String& GetQueryAuthorizationId() const{ return m_queryAuthorizationId; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline bool QueryAuthorizationIdHasBeenSet() const { return m_queryAuthorizationIdHasBeenSet; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const Aws::String& value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId = value; } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(Aws::String&& value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId = std::move(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline void SetQueryAuthorizationId(const char* value) { m_queryAuthorizationIdHasBeenSet = true; m_queryAuthorizationId.assign(value); } + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(const Aws::String& value) { SetQueryAuthorizationId(value); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(Aws::String&& value) { SetQueryAuthorizationId(std::move(value)); return *this;} + + /** + *

A cryptographically generated query identifier generated by Glue or Lake + * Formation.

+ */ + inline QuerySessionContext& WithQueryAuthorizationId(const char* value) { SetQueryAuthorizationId(value); return *this;} + + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline const Aws::Map& GetAdditionalContext() const{ return m_additionalContext; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline bool AdditionalContextHasBeenSet() const { return m_additionalContextHasBeenSet; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline void SetAdditionalContext(const Aws::Map& value) { m_additionalContextHasBeenSet = true; m_additionalContext = value; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline void SetAdditionalContext(Aws::Map&& value) { m_additionalContextHasBeenSet = true; m_additionalContext = std::move(value); } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& WithAdditionalContext(const Aws::Map& value) { SetAdditionalContext(value); return *this;} + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& WithAdditionalContext(Aws::Map&& value) { SetAdditionalContext(std::move(value)); return *this;} + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const Aws::String& key, const Aws::String& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, const Aws::String& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const Aws::String& key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const char* key, Aws::String&& value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, std::move(value)); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(Aws::String&& key, const char* value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(std::move(key), value); return *this; } + + /** + *

An opaque string-string map passed by the query engine.

+ */ + inline QuerySessionContext& AddAdditionalContext(const char* key, const char* value) { m_additionalContextHasBeenSet = true; m_additionalContext.emplace(key, value); return *this; } + + private: + + Aws::String m_queryId; + bool m_queryIdHasBeenSet = false; + + Aws::Utils::DateTime m_queryStartTime; + bool m_queryStartTimeHasBeenSet = false; + + Aws::String m_clusterId; + bool m_clusterIdHasBeenSet = false; + + Aws::String m_queryAuthorizationId; + bool m_queryAuthorizationIdHasBeenSet = false; + + Aws::Map m_additionalContext; + bool m_additionalContextHasBeenSet = false; + }; + +} // namespace Model +} // namespace LakeFormation +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsRequest.cpp b/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsRequest.cpp index 567cd16a4be..af7ee9abf53 100644 --- a/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsRequest.cpp +++ b/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsRequest.cpp @@ -18,7 +18,9 @@ GetTemporaryGlueTableCredentialsRequest::GetTemporaryGlueTableCredentialsRequest m_durationSeconds(0), m_durationSecondsHasBeenSet(false), m_auditContextHasBeenSet(false), - m_supportedPermissionTypesHasBeenSet(false) + m_supportedPermissionTypesHasBeenSet(false), + m_s3PathHasBeenSet(false), + m_querySessionContextHasBeenSet(false) { } @@ -66,6 +68,18 @@ Aws::String GetTemporaryGlueTableCredentialsRequest::SerializePayload() const } + if(m_s3PathHasBeenSet) + { + payload.WithString("S3Path", m_s3Path); + + } + + if(m_querySessionContextHasBeenSet) + { + payload.WithObject("QuerySessionContext", m_querySessionContext.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsResult.cpp b/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsResult.cpp index e8ff114a915..6194e616655 100644 --- a/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsResult.cpp +++ b/generated/src/aws-cpp-sdk-lakeformation/source/model/GetTemporaryGlueTableCredentialsResult.cpp @@ -53,6 +53,15 @@ GetTemporaryGlueTableCredentialsResult& GetTemporaryGlueTableCredentialsResult:: } + if(jsonValue.ValueExists("VendedS3Path")) + { + Aws::Utils::Array vendedS3PathJsonList = jsonValue.GetArray("VendedS3Path"); + for(unsigned vendedS3PathIndex = 0; vendedS3PathIndex < vendedS3PathJsonList.GetLength(); ++vendedS3PathIndex) + { + m_vendedS3Path.push_back(vendedS3PathJsonList[vendedS3PathIndex].AsString()); + } + } + const auto& headers = result.GetHeaderValueCollection(); const auto& requestIdIter = headers.find("x-amzn-requestid"); diff --git a/generated/src/aws-cpp-sdk-lakeformation/source/model/QuerySessionContext.cpp b/generated/src/aws-cpp-sdk-lakeformation/source/model/QuerySessionContext.cpp new file mode 100644 index 00000000000..5148f69f715 --- /dev/null +++ b/generated/src/aws-cpp-sdk-lakeformation/source/model/QuerySessionContext.cpp @@ -0,0 +1,126 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace LakeFormation +{ +namespace Model +{ + +QuerySessionContext::QuerySessionContext() : + m_queryIdHasBeenSet(false), + m_queryStartTimeHasBeenSet(false), + m_clusterIdHasBeenSet(false), + m_queryAuthorizationIdHasBeenSet(false), + m_additionalContextHasBeenSet(false) +{ +} + +QuerySessionContext::QuerySessionContext(JsonView jsonValue) : + m_queryIdHasBeenSet(false), + m_queryStartTimeHasBeenSet(false), + m_clusterIdHasBeenSet(false), + m_queryAuthorizationIdHasBeenSet(false), + m_additionalContextHasBeenSet(false) +{ + *this = jsonValue; +} + +QuerySessionContext& QuerySessionContext::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("QueryId")) + { + m_queryId = jsonValue.GetString("QueryId"); + + m_queryIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("QueryStartTime")) + { + m_queryStartTime = jsonValue.GetDouble("QueryStartTime"); + + m_queryStartTimeHasBeenSet = true; + } + + if(jsonValue.ValueExists("ClusterId")) + { + m_clusterId = jsonValue.GetString("ClusterId"); + + m_clusterIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("QueryAuthorizationId")) + { + m_queryAuthorizationId = jsonValue.GetString("QueryAuthorizationId"); + + m_queryAuthorizationIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("AdditionalContext")) + { + Aws::Map additionalContextJsonMap = jsonValue.GetObject("AdditionalContext").GetAllObjects(); + for(auto& additionalContextItem : additionalContextJsonMap) + { + m_additionalContext[additionalContextItem.first] = additionalContextItem.second.AsString(); + } + m_additionalContextHasBeenSet = true; + } + + return *this; +} + +JsonValue QuerySessionContext::Jsonize() const +{ + JsonValue payload; + + if(m_queryIdHasBeenSet) + { + payload.WithString("QueryId", m_queryId); + + } + + if(m_queryStartTimeHasBeenSet) + { + payload.WithDouble("QueryStartTime", m_queryStartTime.SecondsWithMSPrecision()); + } + + if(m_clusterIdHasBeenSet) + { + payload.WithString("ClusterId", m_clusterId); + + } + + if(m_queryAuthorizationIdHasBeenSet) + { + payload.WithString("QueryAuthorizationId", m_queryAuthorizationId); + + } + + if(m_additionalContextHasBeenSet) + { + JsonValue additionalContextJsonMap; + for(auto& additionalContextItem : m_additionalContext) + { + additionalContextJsonMap.WithString(additionalContextItem.first, additionalContextItem.second); + } + payload.WithObject("AdditionalContext", std::move(additionalContextJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace LakeFormation +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectClient.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectClient.h index ec8d348cc35..6075d6ab577 100644 --- a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectClient.h +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectClient.h @@ -465,6 +465,32 @@ namespace MediaConnect return SubmitAsync(&MediaConnectClient::DescribeFlow, request, handler, context); } + /** + * Displays details of the flow's source stream. The response contains information + * about the contents of the stream and its programs.

See Also:

AWS + * API Reference

+ */ + virtual Model::DescribeFlowSourceMetadataOutcome DescribeFlowSourceMetadata(const Model::DescribeFlowSourceMetadataRequest& request) const; + + /** + * A Callable wrapper for DescribeFlowSourceMetadata that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::DescribeFlowSourceMetadataOutcomeCallable DescribeFlowSourceMetadataCallable(const DescribeFlowSourceMetadataRequestT& request) const + { + return SubmitCallable(&MediaConnectClient::DescribeFlowSourceMetadata, request); + } + + /** + * An Async wrapper for DescribeFlowSourceMetadata that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void DescribeFlowSourceMetadataAsync(const DescribeFlowSourceMetadataRequestT& request, const DescribeFlowSourceMetadataResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&MediaConnectClient::DescribeFlowSourceMetadata, request, handler, context); + } + /** * Displays the details of a gateway. The response includes the gateway ARN, name, * and CIDR blocks, as well as details about the networks.

See Also:

diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectServiceClientModel.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectServiceClientModel.h index 0309935aab7..b807dfe72b5 100644 --- a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectServiceClientModel.h +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/MediaConnectServiceClientModel.h @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -122,6 +123,7 @@ namespace Aws class DeregisterGatewayInstanceRequest; class DescribeBridgeRequest; class DescribeFlowRequest; + class DescribeFlowSourceMetadataRequest; class DescribeGatewayRequest; class DescribeGatewayInstanceRequest; class DescribeOfferingRequest; @@ -175,6 +177,7 @@ namespace Aws typedef Aws::Utils::Outcome DeregisterGatewayInstanceOutcome; typedef Aws::Utils::Outcome DescribeBridgeOutcome; typedef Aws::Utils::Outcome DescribeFlowOutcome; + typedef Aws::Utils::Outcome DescribeFlowSourceMetadataOutcome; typedef Aws::Utils::Outcome DescribeGatewayOutcome; typedef Aws::Utils::Outcome DescribeGatewayInstanceOutcome; typedef Aws::Utils::Outcome DescribeOfferingOutcome; @@ -228,6 +231,7 @@ namespace Aws typedef std::future DeregisterGatewayInstanceOutcomeCallable; typedef std::future DescribeBridgeOutcomeCallable; typedef std::future DescribeFlowOutcomeCallable; + typedef std::future DescribeFlowSourceMetadataOutcomeCallable; typedef std::future DescribeGatewayOutcomeCallable; typedef std::future DescribeGatewayInstanceOutcomeCallable; typedef std::future DescribeOfferingOutcomeCallable; @@ -284,6 +288,7 @@ namespace Aws typedef std::function&) > DeregisterGatewayInstanceResponseReceivedHandler; typedef std::function&) > DescribeBridgeResponseReceivedHandler; typedef std::function&) > DescribeFlowResponseReceivedHandler; + typedef std::function&) > DescribeFlowSourceMetadataResponseReceivedHandler; typedef std::function&) > DescribeGatewayResponseReceivedHandler; typedef std::function&) > DescribeGatewayInstanceResponseReceivedHandler; typedef std::function&) > DescribeOfferingResponseReceivedHandler; diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataRequest.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataRequest.h new file mode 100644 index 00000000000..3de41a2bb4f --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataRequest.h @@ -0,0 +1,83 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace MediaConnect +{ +namespace Model +{ + + /** + */ + class DescribeFlowSourceMetadataRequest : public MediaConnectRequest + { + public: + AWS_MEDIACONNECT_API DescribeFlowSourceMetadataRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DescribeFlowSourceMetadata"; } + + AWS_MEDIACONNECT_API Aws::String SerializePayload() const override; + + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline const Aws::String& GetFlowArn() const{ return m_flowArn; } + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline bool FlowArnHasBeenSet() const { return m_flowArnHasBeenSet; } + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline void SetFlowArn(const Aws::String& value) { m_flowArnHasBeenSet = true; m_flowArn = value; } + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline void SetFlowArn(Aws::String&& value) { m_flowArnHasBeenSet = true; m_flowArn = std::move(value); } + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline void SetFlowArn(const char* value) { m_flowArnHasBeenSet = true; m_flowArn.assign(value); } + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline DescribeFlowSourceMetadataRequest& WithFlowArn(const Aws::String& value) { SetFlowArn(value); return *this;} + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline DescribeFlowSourceMetadataRequest& WithFlowArn(Aws::String&& value) { SetFlowArn(std::move(value)); return *this;} + + /** + * The Amazon Resource Name (ARN) of the flow. + */ + inline DescribeFlowSourceMetadataRequest& WithFlowArn(const char* value) { SetFlowArn(value); return *this;} + + private: + + Aws::String m_flowArn; + bool m_flowArnHasBeenSet = false; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataResult.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataResult.h new file mode 100644 index 00000000000..392b28bb519 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/DescribeFlowSourceMetadataResult.h @@ -0,0 +1,196 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace MediaConnect +{ +namespace Model +{ + class DescribeFlowSourceMetadataResult + { + public: + AWS_MEDIACONNECT_API DescribeFlowSourceMetadataResult(); + AWS_MEDIACONNECT_API DescribeFlowSourceMetadataResult(const Aws::AmazonWebServiceResult& result); + AWS_MEDIACONNECT_API DescribeFlowSourceMetadataResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline const Aws::String& GetFlowArn() const{ return m_flowArn; } + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline void SetFlowArn(const Aws::String& value) { m_flowArn = value; } + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline void SetFlowArn(Aws::String&& value) { m_flowArn = std::move(value); } + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline void SetFlowArn(const char* value) { m_flowArn.assign(value); } + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline DescribeFlowSourceMetadataResult& WithFlowArn(const Aws::String& value) { SetFlowArn(value); return *this;} + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline DescribeFlowSourceMetadataResult& WithFlowArn(Aws::String&& value) { SetFlowArn(std::move(value)); return *this;} + + /** + * The ARN of the flow that DescribeFlowSourceMetadata was performed on. + */ + inline DescribeFlowSourceMetadataResult& WithFlowArn(const char* value) { SetFlowArn(value); return *this;} + + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline const Aws::Vector& GetMessages() const{ return m_messages; } + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline void SetMessages(const Aws::Vector& value) { m_messages = value; } + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline void SetMessages(Aws::Vector&& value) { m_messages = std::move(value); } + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline DescribeFlowSourceMetadataResult& WithMessages(const Aws::Vector& value) { SetMessages(value); return *this;} + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline DescribeFlowSourceMetadataResult& WithMessages(Aws::Vector&& value) { SetMessages(std::move(value)); return *this;} + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline DescribeFlowSourceMetadataResult& AddMessages(const MessageDetail& value) { m_messages.push_back(value); return *this; } + + /** + * Provides a status code and message regarding issues found with the flow source + * metadata. + */ + inline DescribeFlowSourceMetadataResult& AddMessages(MessageDetail&& value) { m_messages.push_back(std::move(value)); return *this; } + + + /** + * The timestamp of the most recent change in metadata for this flow’s source. + */ + inline const Aws::Utils::DateTime& GetTimestamp() const{ return m_timestamp; } + + /** + * The timestamp of the most recent change in metadata for this flow’s source. + */ + inline void SetTimestamp(const Aws::Utils::DateTime& value) { m_timestamp = value; } + + /** + * The timestamp of the most recent change in metadata for this flow’s source. + */ + inline void SetTimestamp(Aws::Utils::DateTime&& value) { m_timestamp = std::move(value); } + + /** + * The timestamp of the most recent change in metadata for this flow’s source. + */ + inline DescribeFlowSourceMetadataResult& WithTimestamp(const Aws::Utils::DateTime& value) { SetTimestamp(value); return *this;} + + /** + * The timestamp of the most recent change in metadata for this flow’s source. + */ + inline DescribeFlowSourceMetadataResult& WithTimestamp(Aws::Utils::DateTime&& value) { SetTimestamp(std::move(value)); return *this;} + + + + inline const TransportMediaInfo& GetTransportMediaInfo() const{ return m_transportMediaInfo; } + + + inline void SetTransportMediaInfo(const TransportMediaInfo& value) { m_transportMediaInfo = value; } + + + inline void SetTransportMediaInfo(TransportMediaInfo&& value) { m_transportMediaInfo = std::move(value); } + + + inline DescribeFlowSourceMetadataResult& WithTransportMediaInfo(const TransportMediaInfo& value) { SetTransportMediaInfo(value); return *this;} + + + inline DescribeFlowSourceMetadataResult& WithTransportMediaInfo(TransportMediaInfo&& value) { SetTransportMediaInfo(std::move(value)); return *this;} + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline DescribeFlowSourceMetadataResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline DescribeFlowSourceMetadataResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline DescribeFlowSourceMetadataResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_flowArn; + + Aws::Vector m_messages; + + Aws::Utils::DateTime m_timestamp; + + TransportMediaInfo m_transportMediaInfo; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/FrameResolution.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/FrameResolution.h new file mode 100644 index 00000000000..031ff87b5e2 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/FrameResolution.h @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace MediaConnect +{ +namespace Model +{ + + /** + * The frame resolution used by the video stream.

See Also:

AWS + * API Reference

+ */ + class FrameResolution + { + public: + AWS_MEDIACONNECT_API FrameResolution(); + AWS_MEDIACONNECT_API FrameResolution(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API FrameResolution& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + * The number of pixels in the height of the video frame. + */ + inline int GetFrameHeight() const{ return m_frameHeight; } + + /** + * The number of pixels in the height of the video frame. + */ + inline bool FrameHeightHasBeenSet() const { return m_frameHeightHasBeenSet; } + + /** + * The number of pixels in the height of the video frame. + */ + inline void SetFrameHeight(int value) { m_frameHeightHasBeenSet = true; m_frameHeight = value; } + + /** + * The number of pixels in the height of the video frame. + */ + inline FrameResolution& WithFrameHeight(int value) { SetFrameHeight(value); return *this;} + + + /** + * The number of pixels in the width of the video frame. + */ + inline int GetFrameWidth() const{ return m_frameWidth; } + + /** + * The number of pixels in the width of the video frame. + */ + inline bool FrameWidthHasBeenSet() const { return m_frameWidthHasBeenSet; } + + /** + * The number of pixels in the width of the video frame. + */ + inline void SetFrameWidth(int value) { m_frameWidthHasBeenSet = true; m_frameWidth = value; } + + /** + * The number of pixels in the width of the video frame. + */ + inline FrameResolution& WithFrameWidth(int value) { SetFrameWidth(value); return *this;} + + private: + + int m_frameHeight; + bool m_frameHeightHasBeenSet = false; + + int m_frameWidth; + bool m_frameWidthHasBeenSet = false; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportMediaInfo.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportMediaInfo.h new file mode 100644 index 00000000000..0ec8545ec71 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportMediaInfo.h @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace MediaConnect +{ +namespace Model +{ + + /** + * The metadata of the transport stream in the current flow's source.

See + * Also:

AWS + * API Reference

+ */ + class TransportMediaInfo + { + public: + AWS_MEDIACONNECT_API TransportMediaInfo(); + AWS_MEDIACONNECT_API TransportMediaInfo(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API TransportMediaInfo& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + * The list of transport stream programs in the current flow's source. + */ + inline const Aws::Vector& GetPrograms() const{ return m_programs; } + + /** + * The list of transport stream programs in the current flow's source. + */ + inline bool ProgramsHasBeenSet() const { return m_programsHasBeenSet; } + + /** + * The list of transport stream programs in the current flow's source. + */ + inline void SetPrograms(const Aws::Vector& value) { m_programsHasBeenSet = true; m_programs = value; } + + /** + * The list of transport stream programs in the current flow's source. + */ + inline void SetPrograms(Aws::Vector&& value) { m_programsHasBeenSet = true; m_programs = std::move(value); } + + /** + * The list of transport stream programs in the current flow's source. + */ + inline TransportMediaInfo& WithPrograms(const Aws::Vector& value) { SetPrograms(value); return *this;} + + /** + * The list of transport stream programs in the current flow's source. + */ + inline TransportMediaInfo& WithPrograms(Aws::Vector&& value) { SetPrograms(std::move(value)); return *this;} + + /** + * The list of transport stream programs in the current flow's source. + */ + inline TransportMediaInfo& AddPrograms(const TransportStreamProgram& value) { m_programsHasBeenSet = true; m_programs.push_back(value); return *this; } + + /** + * The list of transport stream programs in the current flow's source. + */ + inline TransportMediaInfo& AddPrograms(TransportStreamProgram&& value) { m_programsHasBeenSet = true; m_programs.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_programs; + bool m_programsHasBeenSet = false; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStream.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStream.h new file mode 100644 index 00000000000..948dcb15f3c --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStream.h @@ -0,0 +1,295 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace MediaConnect +{ +namespace Model +{ + + /** + * The metadata of an elementary transport stream.

See Also:

AWS + * API Reference

+ */ + class TransportStream + { + public: + AWS_MEDIACONNECT_API TransportStream(); + AWS_MEDIACONNECT_API TransportStream(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API TransportStream& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + * The number of channels in the audio stream. + */ + inline int GetChannels() const{ return m_channels; } + + /** + * The number of channels in the audio stream. + */ + inline bool ChannelsHasBeenSet() const { return m_channelsHasBeenSet; } + + /** + * The number of channels in the audio stream. + */ + inline void SetChannels(int value) { m_channelsHasBeenSet = true; m_channels = value; } + + /** + * The number of channels in the audio stream. + */ + inline TransportStream& WithChannels(int value) { SetChannels(value); return *this;} + + + /** + * The codec used by the stream. + */ + inline const Aws::String& GetCodec() const{ return m_codec; } + + /** + * The codec used by the stream. + */ + inline bool CodecHasBeenSet() const { return m_codecHasBeenSet; } + + /** + * The codec used by the stream. + */ + inline void SetCodec(const Aws::String& value) { m_codecHasBeenSet = true; m_codec = value; } + + /** + * The codec used by the stream. + */ + inline void SetCodec(Aws::String&& value) { m_codecHasBeenSet = true; m_codec = std::move(value); } + + /** + * The codec used by the stream. + */ + inline void SetCodec(const char* value) { m_codecHasBeenSet = true; m_codec.assign(value); } + + /** + * The codec used by the stream. + */ + inline TransportStream& WithCodec(const Aws::String& value) { SetCodec(value); return *this;} + + /** + * The codec used by the stream. + */ + inline TransportStream& WithCodec(Aws::String&& value) { SetCodec(std::move(value)); return *this;} + + /** + * The codec used by the stream. + */ + inline TransportStream& WithCodec(const char* value) { SetCodec(value); return *this;} + + + /** + * The frame rate used by the video stream. + */ + inline const Aws::String& GetFrameRate() const{ return m_frameRate; } + + /** + * The frame rate used by the video stream. + */ + inline bool FrameRateHasBeenSet() const { return m_frameRateHasBeenSet; } + + /** + * The frame rate used by the video stream. + */ + inline void SetFrameRate(const Aws::String& value) { m_frameRateHasBeenSet = true; m_frameRate = value; } + + /** + * The frame rate used by the video stream. + */ + inline void SetFrameRate(Aws::String&& value) { m_frameRateHasBeenSet = true; m_frameRate = std::move(value); } + + /** + * The frame rate used by the video stream. + */ + inline void SetFrameRate(const char* value) { m_frameRateHasBeenSet = true; m_frameRate.assign(value); } + + /** + * The frame rate used by the video stream. + */ + inline TransportStream& WithFrameRate(const Aws::String& value) { SetFrameRate(value); return *this;} + + /** + * The frame rate used by the video stream. + */ + inline TransportStream& WithFrameRate(Aws::String&& value) { SetFrameRate(std::move(value)); return *this;} + + /** + * The frame rate used by the video stream. + */ + inline TransportStream& WithFrameRate(const char* value) { SetFrameRate(value); return *this;} + + + + inline const FrameResolution& GetFrameResolution() const{ return m_frameResolution; } + + + inline bool FrameResolutionHasBeenSet() const { return m_frameResolutionHasBeenSet; } + + + inline void SetFrameResolution(const FrameResolution& value) { m_frameResolutionHasBeenSet = true; m_frameResolution = value; } + + + inline void SetFrameResolution(FrameResolution&& value) { m_frameResolutionHasBeenSet = true; m_frameResolution = std::move(value); } + + + inline TransportStream& WithFrameResolution(const FrameResolution& value) { SetFrameResolution(value); return *this;} + + + inline TransportStream& WithFrameResolution(FrameResolution&& value) { SetFrameResolution(std::move(value)); return *this;} + + + /** + * The Packet ID (PID) as it is reported in the Program Map Table. + */ + inline int GetPid() const{ return m_pid; } + + /** + * The Packet ID (PID) as it is reported in the Program Map Table. + */ + inline bool PidHasBeenSet() const { return m_pidHasBeenSet; } + + /** + * The Packet ID (PID) as it is reported in the Program Map Table. + */ + inline void SetPid(int value) { m_pidHasBeenSet = true; m_pid = value; } + + /** + * The Packet ID (PID) as it is reported in the Program Map Table. + */ + inline TransportStream& WithPid(int value) { SetPid(value); return *this;} + + + /** + * The sample rate used by the audio stream. + */ + inline int GetSampleRate() const{ return m_sampleRate; } + + /** + * The sample rate used by the audio stream. + */ + inline bool SampleRateHasBeenSet() const { return m_sampleRateHasBeenSet; } + + /** + * The sample rate used by the audio stream. + */ + inline void SetSampleRate(int value) { m_sampleRateHasBeenSet = true; m_sampleRate = value; } + + /** + * The sample rate used by the audio stream. + */ + inline TransportStream& WithSampleRate(int value) { SetSampleRate(value); return *this;} + + + /** + * The sample bit size used by the audio stream. + */ + inline int GetSampleSize() const{ return m_sampleSize; } + + /** + * The sample bit size used by the audio stream. + */ + inline bool SampleSizeHasBeenSet() const { return m_sampleSizeHasBeenSet; } + + /** + * The sample bit size used by the audio stream. + */ + inline void SetSampleSize(int value) { m_sampleSizeHasBeenSet = true; m_sampleSize = value; } + + /** + * The sample bit size used by the audio stream. + */ + inline TransportStream& WithSampleSize(int value) { SetSampleSize(value); return *this;} + + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline const Aws::String& GetStreamType() const{ return m_streamType; } + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline bool StreamTypeHasBeenSet() const { return m_streamTypeHasBeenSet; } + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline void SetStreamType(const Aws::String& value) { m_streamTypeHasBeenSet = true; m_streamType = value; } + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline void SetStreamType(Aws::String&& value) { m_streamTypeHasBeenSet = true; m_streamType = std::move(value); } + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline void SetStreamType(const char* value) { m_streamTypeHasBeenSet = true; m_streamType.assign(value); } + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline TransportStream& WithStreamType(const Aws::String& value) { SetStreamType(value); return *this;} + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline TransportStream& WithStreamType(Aws::String&& value) { SetStreamType(std::move(value)); return *this;} + + /** + * The Stream Type as it is reported in the Program Map Table. + */ + inline TransportStream& WithStreamType(const char* value) { SetStreamType(value); return *this;} + + private: + + int m_channels; + bool m_channelsHasBeenSet = false; + + Aws::String m_codec; + bool m_codecHasBeenSet = false; + + Aws::String m_frameRate; + bool m_frameRateHasBeenSet = false; + + FrameResolution m_frameResolution; + bool m_frameResolutionHasBeenSet = false; + + int m_pid; + bool m_pidHasBeenSet = false; + + int m_sampleRate; + bool m_sampleRateHasBeenSet = false; + + int m_sampleSize; + bool m_sampleSizeHasBeenSet = false; + + Aws::String m_streamType; + bool m_streamTypeHasBeenSet = false; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStreamProgram.h b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStreamProgram.h new file mode 100644 index 00000000000..d9cb22c99e6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/include/aws/mediaconnect/model/TransportStreamProgram.h @@ -0,0 +1,218 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace MediaConnect +{ +namespace Model +{ + + /** + * The metadata of a single transport stream program.

See Also:

AWS + * API Reference

+ */ + class TransportStreamProgram + { + public: + AWS_MEDIACONNECT_API TransportStreamProgram(); + AWS_MEDIACONNECT_API TransportStreamProgram(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API TransportStreamProgram& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + * The Program Clock Reference (PCR) Packet ID (PID) as it is reported in the + * Program Association Table. + */ + inline int GetPcrPid() const{ return m_pcrPid; } + + /** + * The Program Clock Reference (PCR) Packet ID (PID) as it is reported in the + * Program Association Table. + */ + inline bool PcrPidHasBeenSet() const { return m_pcrPidHasBeenSet; } + + /** + * The Program Clock Reference (PCR) Packet ID (PID) as it is reported in the + * Program Association Table. + */ + inline void SetPcrPid(int value) { m_pcrPidHasBeenSet = true; m_pcrPid = value; } + + /** + * The Program Clock Reference (PCR) Packet ID (PID) as it is reported in the + * Program Association Table. + */ + inline TransportStreamProgram& WithPcrPid(int value) { SetPcrPid(value); return *this;} + + + /** + * The program name as it is reported in the Program Association Table. + */ + inline const Aws::String& GetProgramName() const{ return m_programName; } + + /** + * The program name as it is reported in the Program Association Table. + */ + inline bool ProgramNameHasBeenSet() const { return m_programNameHasBeenSet; } + + /** + * The program name as it is reported in the Program Association Table. + */ + inline void SetProgramName(const Aws::String& value) { m_programNameHasBeenSet = true; m_programName = value; } + + /** + * The program name as it is reported in the Program Association Table. + */ + inline void SetProgramName(Aws::String&& value) { m_programNameHasBeenSet = true; m_programName = std::move(value); } + + /** + * The program name as it is reported in the Program Association Table. + */ + inline void SetProgramName(const char* value) { m_programNameHasBeenSet = true; m_programName.assign(value); } + + /** + * The program name as it is reported in the Program Association Table. + */ + inline TransportStreamProgram& WithProgramName(const Aws::String& value) { SetProgramName(value); return *this;} + + /** + * The program name as it is reported in the Program Association Table. + */ + inline TransportStreamProgram& WithProgramName(Aws::String&& value) { SetProgramName(std::move(value)); return *this;} + + /** + * The program name as it is reported in the Program Association Table. + */ + inline TransportStreamProgram& WithProgramName(const char* value) { SetProgramName(value); return *this;} + + + /** + * The program number as it is reported in the Program Association Table. + */ + inline int GetProgramNumber() const{ return m_programNumber; } + + /** + * The program number as it is reported in the Program Association Table. + */ + inline bool ProgramNumberHasBeenSet() const { return m_programNumberHasBeenSet; } + + /** + * The program number as it is reported in the Program Association Table. + */ + inline void SetProgramNumber(int value) { m_programNumberHasBeenSet = true; m_programNumber = value; } + + /** + * The program number as it is reported in the Program Association Table. + */ + inline TransportStreamProgram& WithProgramNumber(int value) { SetProgramNumber(value); return *this;} + + + /** + * The program Packet ID (PID) as it is reported in the Program Association Table. + */ + inline int GetProgramPid() const{ return m_programPid; } + + /** + * The program Packet ID (PID) as it is reported in the Program Association Table. + */ + inline bool ProgramPidHasBeenSet() const { return m_programPidHasBeenSet; } + + /** + * The program Packet ID (PID) as it is reported in the Program Association Table. + */ + inline void SetProgramPid(int value) { m_programPidHasBeenSet = true; m_programPid = value; } + + /** + * The program Packet ID (PID) as it is reported in the Program Association Table. + */ + inline TransportStreamProgram& WithProgramPid(int value) { SetProgramPid(value); return *this;} + + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline const Aws::Vector& GetStreams() const{ return m_streams; } + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline bool StreamsHasBeenSet() const { return m_streamsHasBeenSet; } + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline void SetStreams(const Aws::Vector& value) { m_streamsHasBeenSet = true; m_streams = value; } + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline void SetStreams(Aws::Vector&& value) { m_streamsHasBeenSet = true; m_streams = std::move(value); } + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline TransportStreamProgram& WithStreams(const Aws::Vector& value) { SetStreams(value); return *this;} + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline TransportStreamProgram& WithStreams(Aws::Vector&& value) { SetStreams(std::move(value)); return *this;} + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline TransportStreamProgram& AddStreams(const TransportStream& value) { m_streamsHasBeenSet = true; m_streams.push_back(value); return *this; } + + /** + * The list of elementary transport streams in the program. The list includes + * video, audio, and data streams. + */ + inline TransportStreamProgram& AddStreams(TransportStream&& value) { m_streamsHasBeenSet = true; m_streams.push_back(std::move(value)); return *this; } + + private: + + int m_pcrPid; + bool m_pcrPidHasBeenSet = false; + + Aws::String m_programName; + bool m_programNameHasBeenSet = false; + + int m_programNumber; + bool m_programNumberHasBeenSet = false; + + int m_programPid; + bool m_programPidHasBeenSet = false; + + Aws::Vector m_streams; + bool m_streamsHasBeenSet = false; + }; + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectClient.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectClient.cpp index 8f68d2e9ac4..39a4de7fb5a 100644 --- a/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectClient.cpp +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectClient.cpp @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -687,6 +688,40 @@ DescribeFlowOutcome MediaConnectClient::DescribeFlow(const DescribeFlowRequest& {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); } +DescribeFlowSourceMetadataOutcome MediaConnectClient::DescribeFlowSourceMetadata(const DescribeFlowSourceMetadataRequest& request) const +{ + AWS_OPERATION_GUARD(DescribeFlowSourceMetadata); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, DescribeFlowSourceMetadata, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.FlowArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DescribeFlowSourceMetadata", "Required field: FlowArn, is not set"); + return DescribeFlowSourceMetadataOutcome(Aws::Client::AWSError(MediaConnectErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [FlowArn]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, DescribeFlowSourceMetadata, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, DescribeFlowSourceMetadata, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".DescribeFlowSourceMetadata", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> DescribeFlowSourceMetadataOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DescribeFlowSourceMetadata, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/v1/flows/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetFlowArn()); + endpointResolutionOutcome.GetResult().AddPathSegments("/source-metadata"); + return DescribeFlowSourceMetadataOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + DescribeGatewayOutcome MediaConnectClient::DescribeGateway(const DescribeGatewayRequest& request) const { AWS_OPERATION_GUARD(DescribeGateway); diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectEndpointRules.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectEndpointRules.cpp index 042e6ce5194..b313cb54c63 100644 --- a/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectEndpointRules.cpp +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/MediaConnectEndpointRules.cpp @@ -51,107 +51,107 @@ static constexpr RulesBlobT RulesBlob = {{ ',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}','}',',','"','r','u','l','e','s', '"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"', 'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n', -'d','p','o','i','n','t','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"', -',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[', -'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r', -'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r', -'u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o', -'n','f','i','g','u','r','a','t','i','o','n',':',' ','F','I','P','S',' ','a','n','d',' ','c','u','s', -'t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p', -'o','r','t','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"', -'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e', -'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':', -'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"', -'e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a', -'t','i','o','n',':',' ','D','u','a','l','s','t','a','c','k',' ','a','n','d',' ','c','u','s','t','o', -'m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r', -'t','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o', -'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{', -'"','u','r','l','"',':','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',',', -'"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"', -':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}', -',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s', -'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i', -'o','n','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u', -'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n', -'"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':', -'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g', -'n','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t', -'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o', +'d','p','o','i','n','t','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o', 'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n', 'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U', -'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o', -'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e', -'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}', -']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[', -'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o', -'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u','e',',', -'{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{', -'"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',', -'"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']','}',',','{','"','f','n','"',':', -'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t', -'r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v', -'"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l', -'t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']','}', -']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"', -':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o', -'i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i', -'a','c','o','n','n','e','c','t','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P', -'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D', -'n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{', -'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e', -'n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', -':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',' ','D','u','a', -'l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b','u','t',' ','t', -'h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u', -'p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t','y','p','e','"', -':','"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', -':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"', -'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',', -'t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u', -'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n', -'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':', -'[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r', -'g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s', -'u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']','}',']', -',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{', -'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t', -'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o', -'n','n','e','c','t','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t', -'i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"', -'p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':', -'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',', -'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':', -'"','F','I','P','S',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s', -' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o', -'r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']', -'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b', -'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r', -'e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']', -'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':', -'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o', -'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u','e', -',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[', -'{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}', -',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']','}',']','}',']', -',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{', -'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t', -'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o', -'n','n','e','c','t','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n', -'R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x', -'}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e', -'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"', -'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r', -'o','r','"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s',' ','e','n','a','b','l','e','d', -' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ', -'n','o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S','t','a','c','k','"',',','"','t', -'y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i', -'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"', -':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o','n','n','e','c','t','.','{','R', -'e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d', -'n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{', +'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':', +'"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','F', +'I','P','S',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a', +'r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':', +'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{', +'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g', +'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"', +'}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i', +'d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','D','u','a','l','s','t','a','c', +'k',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r','e', +' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':','"','e', +'r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"', +'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','{','"','r','e','f','"',':','"', +'E','n','d','p','o','i','n','t','"','}',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{', '}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e', -'n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n', +'n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}', +',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s', +'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i', +'o','n','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t', +'i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i', +'o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o', +'n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','P','a','r','t','i','t','i','o','n','R', +'e','s','u','l','t','"','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i', +'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u', +'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F', +'I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e', +'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':', +'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"', +'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"', +'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v', +'"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"', +'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R', +'e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']', +'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"', +'a','r','g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t', +'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t', +'i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l', +'S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o', +'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{', +'"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o','n','n','e', +'c','t','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i', +'o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f', +'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a', +'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n', +'t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n', +'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S', +' ','a','n','d',' ','D','u','a','l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e', +'d',',',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e', +'s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h', +'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"', +':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{', +'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g', +'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u', +'e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n', +'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"', +',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',', +'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n', +'R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}', +',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i', +'t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r', +'l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o','n','n','e','c','t','-', +'f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R', +'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r', +'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t', +'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':', +'"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',', +'"','e','r','r','o','r','"',':','"','F','I','P','S',' ','i','s',' ','e','n','a','b','l','e','d',' ', +'b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n', +'o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"', +'e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{', +'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l', +'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"', +':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',', +'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{', +'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g', +'v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',', +'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n', +'R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a', +'c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i', +'t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r', +'l','"',':','"','h','t','t','p','s',':','/','/','m','e','d','i','a','c','o','n','n','e','c','t','.', +'{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t', +'#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r', +'o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}', +'}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y', +'p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', +':','[',']',',','"','e','r','r','o','r','"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s', +' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i', +'o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S', +'t','a','c','k','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t', +'y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s', +'"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h', +'t','t','p','s',':','/','/','m','e','d','i','a','c','o','n','n','e','c','t','.','{','R','e','g','i', +'o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S', +'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"', +'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p', +'o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"', +'t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n', 's','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o', 'n','f','i','g','u','r','a','t','i','o','n',':',' ','M','i','s','s','i','n','g',' ','R','e','g','i', 'o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}','\0' diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataRequest.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataRequest.cpp new file mode 100644 index 00000000000..a0c410774f5 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataRequest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::MediaConnect::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +DescribeFlowSourceMetadataRequest::DescribeFlowSourceMetadataRequest() : + m_flowArnHasBeenSet(false) +{ +} + +Aws::String DescribeFlowSourceMetadataRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataResult.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataResult.cpp new file mode 100644 index 00000000000..d9164579359 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/DescribeFlowSourceMetadataResult.cpp @@ -0,0 +1,69 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::MediaConnect::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +DescribeFlowSourceMetadataResult::DescribeFlowSourceMetadataResult() +{ +} + +DescribeFlowSourceMetadataResult::DescribeFlowSourceMetadataResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DescribeFlowSourceMetadataResult& DescribeFlowSourceMetadataResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("flowArn")) + { + m_flowArn = jsonValue.GetString("flowArn"); + + } + + if(jsonValue.ValueExists("messages")) + { + Aws::Utils::Array messagesJsonList = jsonValue.GetArray("messages"); + for(unsigned messagesIndex = 0; messagesIndex < messagesJsonList.GetLength(); ++messagesIndex) + { + m_messages.push_back(messagesJsonList[messagesIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("timestamp")) + { + m_timestamp = jsonValue.GetString("timestamp"); + + } + + if(jsonValue.ValueExists("transportMediaInfo")) + { + m_transportMediaInfo = jsonValue.GetObject("transportMediaInfo"); + + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/FrameResolution.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/FrameResolution.cpp new file mode 100644 index 00000000000..2907e34005c --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/FrameResolution.cpp @@ -0,0 +1,78 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace MediaConnect +{ +namespace Model +{ + +FrameResolution::FrameResolution() : + m_frameHeight(0), + m_frameHeightHasBeenSet(false), + m_frameWidth(0), + m_frameWidthHasBeenSet(false) +{ +} + +FrameResolution::FrameResolution(JsonView jsonValue) : + m_frameHeight(0), + m_frameHeightHasBeenSet(false), + m_frameWidth(0), + m_frameWidthHasBeenSet(false) +{ + *this = jsonValue; +} + +FrameResolution& FrameResolution::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("frameHeight")) + { + m_frameHeight = jsonValue.GetInteger("frameHeight"); + + m_frameHeightHasBeenSet = true; + } + + if(jsonValue.ValueExists("frameWidth")) + { + m_frameWidth = jsonValue.GetInteger("frameWidth"); + + m_frameWidthHasBeenSet = true; + } + + return *this; +} + +JsonValue FrameResolution::Jsonize() const +{ + JsonValue payload; + + if(m_frameHeightHasBeenSet) + { + payload.WithInteger("frameHeight", m_frameHeight); + + } + + if(m_frameWidthHasBeenSet) + { + payload.WithInteger("frameWidth", m_frameWidth); + + } + + return payload; +} + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportMediaInfo.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportMediaInfo.cpp new file mode 100644 index 00000000000..9a07a6cfd4c --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportMediaInfo.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace MediaConnect +{ +namespace Model +{ + +TransportMediaInfo::TransportMediaInfo() : + m_programsHasBeenSet(false) +{ +} + +TransportMediaInfo::TransportMediaInfo(JsonView jsonValue) : + m_programsHasBeenSet(false) +{ + *this = jsonValue; +} + +TransportMediaInfo& TransportMediaInfo::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("programs")) + { + Aws::Utils::Array programsJsonList = jsonValue.GetArray("programs"); + for(unsigned programsIndex = 0; programsIndex < programsJsonList.GetLength(); ++programsIndex) + { + m_programs.push_back(programsJsonList[programsIndex].AsObject()); + } + m_programsHasBeenSet = true; + } + + return *this; +} + +JsonValue TransportMediaInfo::Jsonize() const +{ + JsonValue payload; + + if(m_programsHasBeenSet) + { + Aws::Utils::Array programsJsonList(m_programs.size()); + for(unsigned programsIndex = 0; programsIndex < programsJsonList.GetLength(); ++programsIndex) + { + programsJsonList[programsIndex].AsObject(m_programs[programsIndex].Jsonize()); + } + payload.WithArray("programs", std::move(programsJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStream.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStream.cpp new file mode 100644 index 00000000000..53842417a03 --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStream.cpp @@ -0,0 +1,172 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace MediaConnect +{ +namespace Model +{ + +TransportStream::TransportStream() : + m_channels(0), + m_channelsHasBeenSet(false), + m_codecHasBeenSet(false), + m_frameRateHasBeenSet(false), + m_frameResolutionHasBeenSet(false), + m_pid(0), + m_pidHasBeenSet(false), + m_sampleRate(0), + m_sampleRateHasBeenSet(false), + m_sampleSize(0), + m_sampleSizeHasBeenSet(false), + m_streamTypeHasBeenSet(false) +{ +} + +TransportStream::TransportStream(JsonView jsonValue) : + m_channels(0), + m_channelsHasBeenSet(false), + m_codecHasBeenSet(false), + m_frameRateHasBeenSet(false), + m_frameResolutionHasBeenSet(false), + m_pid(0), + m_pidHasBeenSet(false), + m_sampleRate(0), + m_sampleRateHasBeenSet(false), + m_sampleSize(0), + m_sampleSizeHasBeenSet(false), + m_streamTypeHasBeenSet(false) +{ + *this = jsonValue; +} + +TransportStream& TransportStream::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("channels")) + { + m_channels = jsonValue.GetInteger("channels"); + + m_channelsHasBeenSet = true; + } + + if(jsonValue.ValueExists("codec")) + { + m_codec = jsonValue.GetString("codec"); + + m_codecHasBeenSet = true; + } + + if(jsonValue.ValueExists("frameRate")) + { + m_frameRate = jsonValue.GetString("frameRate"); + + m_frameRateHasBeenSet = true; + } + + if(jsonValue.ValueExists("frameResolution")) + { + m_frameResolution = jsonValue.GetObject("frameResolution"); + + m_frameResolutionHasBeenSet = true; + } + + if(jsonValue.ValueExists("pid")) + { + m_pid = jsonValue.GetInteger("pid"); + + m_pidHasBeenSet = true; + } + + if(jsonValue.ValueExists("sampleRate")) + { + m_sampleRate = jsonValue.GetInteger("sampleRate"); + + m_sampleRateHasBeenSet = true; + } + + if(jsonValue.ValueExists("sampleSize")) + { + m_sampleSize = jsonValue.GetInteger("sampleSize"); + + m_sampleSizeHasBeenSet = true; + } + + if(jsonValue.ValueExists("streamType")) + { + m_streamType = jsonValue.GetString("streamType"); + + m_streamTypeHasBeenSet = true; + } + + return *this; +} + +JsonValue TransportStream::Jsonize() const +{ + JsonValue payload; + + if(m_channelsHasBeenSet) + { + payload.WithInteger("channels", m_channels); + + } + + if(m_codecHasBeenSet) + { + payload.WithString("codec", m_codec); + + } + + if(m_frameRateHasBeenSet) + { + payload.WithString("frameRate", m_frameRate); + + } + + if(m_frameResolutionHasBeenSet) + { + payload.WithObject("frameResolution", m_frameResolution.Jsonize()); + + } + + if(m_pidHasBeenSet) + { + payload.WithInteger("pid", m_pid); + + } + + if(m_sampleRateHasBeenSet) + { + payload.WithInteger("sampleRate", m_sampleRate); + + } + + if(m_sampleSizeHasBeenSet) + { + payload.WithInteger("sampleSize", m_sampleSize); + + } + + if(m_streamTypeHasBeenSet) + { + payload.WithString("streamType", m_streamType); + + } + + return payload; +} + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStreamProgram.cpp b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStreamProgram.cpp new file mode 100644 index 00000000000..5e58117858a --- /dev/null +++ b/generated/src/aws-cpp-sdk-mediaconnect/source/model/TransportStreamProgram.cpp @@ -0,0 +1,133 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace MediaConnect +{ +namespace Model +{ + +TransportStreamProgram::TransportStreamProgram() : + m_pcrPid(0), + m_pcrPidHasBeenSet(false), + m_programNameHasBeenSet(false), + m_programNumber(0), + m_programNumberHasBeenSet(false), + m_programPid(0), + m_programPidHasBeenSet(false), + m_streamsHasBeenSet(false) +{ +} + +TransportStreamProgram::TransportStreamProgram(JsonView jsonValue) : + m_pcrPid(0), + m_pcrPidHasBeenSet(false), + m_programNameHasBeenSet(false), + m_programNumber(0), + m_programNumberHasBeenSet(false), + m_programPid(0), + m_programPidHasBeenSet(false), + m_streamsHasBeenSet(false) +{ + *this = jsonValue; +} + +TransportStreamProgram& TransportStreamProgram::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("pcrPid")) + { + m_pcrPid = jsonValue.GetInteger("pcrPid"); + + m_pcrPidHasBeenSet = true; + } + + if(jsonValue.ValueExists("programName")) + { + m_programName = jsonValue.GetString("programName"); + + m_programNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("programNumber")) + { + m_programNumber = jsonValue.GetInteger("programNumber"); + + m_programNumberHasBeenSet = true; + } + + if(jsonValue.ValueExists("programPid")) + { + m_programPid = jsonValue.GetInteger("programPid"); + + m_programPidHasBeenSet = true; + } + + if(jsonValue.ValueExists("streams")) + { + Aws::Utils::Array streamsJsonList = jsonValue.GetArray("streams"); + for(unsigned streamsIndex = 0; streamsIndex < streamsJsonList.GetLength(); ++streamsIndex) + { + m_streams.push_back(streamsJsonList[streamsIndex].AsObject()); + } + m_streamsHasBeenSet = true; + } + + return *this; +} + +JsonValue TransportStreamProgram::Jsonize() const +{ + JsonValue payload; + + if(m_pcrPidHasBeenSet) + { + payload.WithInteger("pcrPid", m_pcrPid); + + } + + if(m_programNameHasBeenSet) + { + payload.WithString("programName", m_programName); + + } + + if(m_programNumberHasBeenSet) + { + payload.WithInteger("programNumber", m_programNumber); + + } + + if(m_programPidHasBeenSet) + { + payload.WithInteger("programPid", m_programPid); + + } + + if(m_streamsHasBeenSet) + { + Aws::Utils::Array streamsJsonList(m_streams.size()); + for(unsigned streamsIndex = 0; streamsIndex < streamsJsonList.GetLength(); ++streamsIndex) + { + streamsJsonList[streamsIndex].AsObject(m_streams[streamsIndex].Jsonize()); + } + payload.WithArray("streams", std::move(streamsJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace MediaConnect +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/CMakeLists.txt b/generated/src/aws-cpp-sdk-networkmonitor/CMakeLists.txt new file mode 100644 index 00000000000..f3265464b5e --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/CMakeLists.txt @@ -0,0 +1,76 @@ +add_project(aws-cpp-sdk-networkmonitor "C++ SDK for the AWS networkmonitor service" aws-cpp-sdk-core) + +file(GLOB AWS_NETWORKMONITOR_HEADERS + "include/aws/networkmonitor/*.h" +) + +file(GLOB AWS_NETWORKMONITOR_MODEL_HEADERS + "include/aws/networkmonitor/model/*.h" +) + +file(GLOB AWS_NETWORKMONITOR_SOURCE + "source/*.cpp" +) + +file(GLOB AWS_NETWORKMONITOR_MODEL_SOURCE + "source/model/*.cpp" +) + +file(GLOB NETWORKMONITOR_UNIFIED_HEADERS + ${AWS_NETWORKMONITOR_HEADERS} + ${AWS_NETWORKMONITOR_MODEL_HEADERS} +) + +file(GLOB NETWORKMONITOR_UNITY_SRC + ${AWS_NETWORKMONITOR_SOURCE} + ${AWS_NETWORKMONITOR_MODEL_SOURCE} +) + +if(ENABLE_UNITY_BUILD) + enable_unity_build("NETWORKMONITOR" NETWORKMONITOR_UNITY_SRC) +endif() + +file(GLOB NETWORKMONITOR_SRC + ${NETWORKMONITOR_UNIFIED_HEADERS} + ${NETWORKMONITOR_UNITY_SRC} +) + +if(WIN32) + #if we are compiling for visual studio, create a sane directory tree. + if(MSVC) + source_group("Header Files\\aws\\networkmonitor" FILES ${AWS_NETWORKMONITOR_HEADERS}) + source_group("Header Files\\aws\\networkmonitor\\model" FILES ${AWS_NETWORKMONITOR_MODEL_HEADERS}) + source_group("Source Files" FILES ${AWS_NETWORKMONITOR_SOURCE}) + source_group("Source Files\\model" FILES ${AWS_NETWORKMONITOR_MODEL_SOURCE}) + endif(MSVC) +endif() + +set(NETWORKMONITOR_INCLUDES + "${CMAKE_CURRENT_SOURCE_DIR}/include/" +) + +add_library(${PROJECT_NAME} ${NETWORKMONITOR_SRC}) +add_library(AWS::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) + +set_compiler_flags(${PROJECT_NAME}) +set_compiler_warnings(${PROJECT_NAME}) + +if(USE_WINDOWS_DLL_SEMANTICS AND BUILD_SHARED_LIBS) + target_compile_definitions(${PROJECT_NAME} PRIVATE "AWS_NETWORKMONITOR_EXPORTS") +endif() + +target_include_directories(${PROJECT_NAME} PUBLIC + $ + $) + +target_link_libraries(${PROJECT_NAME} PRIVATE ${PLATFORM_DEP_LIBS} ${PROJECT_LIBS}) + + +setup_install() + +install (FILES ${AWS_NETWORKMONITOR_HEADERS} DESTINATION ${INCLUDE_DIRECTORY}/aws/networkmonitor) +install (FILES ${AWS_NETWORKMONITOR_MODEL_HEADERS} DESTINATION ${INCLUDE_DIRECTORY}/aws/networkmonitor/model) + +do_packaging() + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorClient.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorClient.h new file mode 100644 index 00000000000..6dea273093e --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorClient.h @@ -0,0 +1,420 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ + /** + *

Amazon CloudWatch Network Monitor is an Amazon Web Services active network + * monitoring service that identifies if a network issues exists within the Amazon + * Web Services network or your own company network. Within Network Monitor you'll + * choose the source VPCs and subnets from the Amazon Web Services network in which + * you operate and then you'll choose the destination IP addresses from your + * on-premises network. From these sources and destinations, Network Monitor + * creates a monitor containing all the possible source and destination + * combinations, each of which is called a probe, within a single monitor. These + * probes then monitor network traffic to help you identify where network issues + * might be affecting your traffic.

For more information, see Using + * Amazon CloudWatch Network Monitor in the Amazon CloudWatch User + * Guide.

+ */ + class AWS_NETWORKMONITOR_API NetworkMonitorClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods + { + public: + typedef Aws::Client::AWSJsonClient BASECLASS; + static const char* SERVICE_NAME; + static const char* ALLOCATION_TAG; + + typedef NetworkMonitorClientConfiguration ClientConfigurationType; + typedef NetworkMonitorEndpointProvider EndpointProviderType; + + /** + * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config + * is not specified, it will be initialized to default values. + */ + NetworkMonitorClient(const Aws::NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration = Aws::NetworkMonitor::NetworkMonitorClientConfiguration(), + std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); + + /** + * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config + * is not specified, it will be initialized to default values. + */ + NetworkMonitorClient(const Aws::Auth::AWSCredentials& credentials, + std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), + const Aws::NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration = Aws::NetworkMonitor::NetworkMonitorClientConfiguration()); + + /** + * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, + * the default http client factory will be used + */ + NetworkMonitorClient(const std::shared_ptr& credentialsProvider, + std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), + const Aws::NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration = Aws::NetworkMonitor::NetworkMonitorClientConfiguration()); + + + /* Legacy constructors due deprecation */ + /** + * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config + * is not specified, it will be initialized to default values. + */ + NetworkMonitorClient(const Aws::Client::ClientConfiguration& clientConfiguration); + + /** + * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config + * is not specified, it will be initialized to default values. + */ + NetworkMonitorClient(const Aws::Auth::AWSCredentials& credentials, + const Aws::Client::ClientConfiguration& clientConfiguration); + + /** + * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, + * the default http client factory will be used + */ + NetworkMonitorClient(const std::shared_ptr& credentialsProvider, + const Aws::Client::ClientConfiguration& clientConfiguration); + + /* End of legacy constructors due deprecation */ + virtual ~NetworkMonitorClient(); + + /** + *

Creates a monitor between a source subnet and destination IP address. Within + * a monitor you'll create one or more probes that monitor network traffic between + * your source Amazon Web Services VPC subnets and your destination IP addresses. + * Each probe then aggregates and sends metrics to Amazon CloudWatch.

See + * Also:

AWS + * API Reference

+ */ + virtual Model::CreateMonitorOutcome CreateMonitor(const Model::CreateMonitorRequest& request) const; + + /** + * A Callable wrapper for CreateMonitor that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::CreateMonitorOutcomeCallable CreateMonitorCallable(const CreateMonitorRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::CreateMonitor, request); + } + + /** + * An Async wrapper for CreateMonitor that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void CreateMonitorAsync(const CreateMonitorRequestT& request, const CreateMonitorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::CreateMonitor, request, handler, context); + } + + /** + *

Create a probe within a monitor. Once you create a probe, and it begins + * monitoring your network traffic, you'll incur billing charges for that probe. + *

See Also:

AWS + * API Reference

+ */ + virtual Model::CreateProbeOutcome CreateProbe(const Model::CreateProbeRequest& request) const; + + /** + * A Callable wrapper for CreateProbe that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::CreateProbeOutcomeCallable CreateProbeCallable(const CreateProbeRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::CreateProbe, request); + } + + /** + * An Async wrapper for CreateProbe that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void CreateProbeAsync(const CreateProbeRequestT& request, const CreateProbeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::CreateProbe, request, handler, context); + } + + /** + *

Deletes a specified monitor.

See Also:

AWS + * API Reference

+ */ + virtual Model::DeleteMonitorOutcome DeleteMonitor(const Model::DeleteMonitorRequest& request) const; + + /** + * A Callable wrapper for DeleteMonitor that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::DeleteMonitorOutcomeCallable DeleteMonitorCallable(const DeleteMonitorRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::DeleteMonitor, request); + } + + /** + * An Async wrapper for DeleteMonitor that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void DeleteMonitorAsync(const DeleteMonitorRequestT& request, const DeleteMonitorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::DeleteMonitor, request, handler, context); + } + + /** + *

Deletes the specified monitor. Once a probe is deleted you'll no longer incur + * any billing fees for that probe.

See Also:

AWS + * API Reference

+ */ + virtual Model::DeleteProbeOutcome DeleteProbe(const Model::DeleteProbeRequest& request) const; + + /** + * A Callable wrapper for DeleteProbe that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::DeleteProbeOutcomeCallable DeleteProbeCallable(const DeleteProbeRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::DeleteProbe, request); + } + + /** + * An Async wrapper for DeleteProbe that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void DeleteProbeAsync(const DeleteProbeRequestT& request, const DeleteProbeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::DeleteProbe, request, handler, context); + } + + /** + *

Returns details about a specific monitor.

See Also:

AWS + * API Reference

+ */ + virtual Model::GetMonitorOutcome GetMonitor(const Model::GetMonitorRequest& request) const; + + /** + * A Callable wrapper for GetMonitor that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::GetMonitorOutcomeCallable GetMonitorCallable(const GetMonitorRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::GetMonitor, request); + } + + /** + * An Async wrapper for GetMonitor that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void GetMonitorAsync(const GetMonitorRequestT& request, const GetMonitorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::GetMonitor, request, handler, context); + } + + /** + *

Returns the details about a probe. You'll need both the + * monitorName and probeId.

See Also:

+ * AWS + * API Reference

+ */ + virtual Model::GetProbeOutcome GetProbe(const Model::GetProbeRequest& request) const; + + /** + * A Callable wrapper for GetProbe that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::GetProbeOutcomeCallable GetProbeCallable(const GetProbeRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::GetProbe, request); + } + + /** + * An Async wrapper for GetProbe that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void GetProbeAsync(const GetProbeRequestT& request, const GetProbeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::GetProbe, request, handler, context); + } + + /** + *

Returns a list of all of your monitors.

See Also:

AWS + * API Reference

+ */ + virtual Model::ListMonitorsOutcome ListMonitors(const Model::ListMonitorsRequest& request) const; + + /** + * A Callable wrapper for ListMonitors that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::ListMonitorsOutcomeCallable ListMonitorsCallable(const ListMonitorsRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::ListMonitors, request); + } + + /** + * An Async wrapper for ListMonitors that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void ListMonitorsAsync(const ListMonitorsRequestT& request, const ListMonitorsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::ListMonitors, request, handler, context); + } + + /** + *

Lists the tags assigned to this resource.

See Also:

AWS + * API Reference

+ */ + virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; + + /** + * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::ListTagsForResource, request); + } + + /** + * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::ListTagsForResource, request, handler, context); + } + + /** + *

Adds key-value pairs to a monitor or probe.

See Also:

AWS + * API Reference

+ */ + virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; + + /** + * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::TagResource, request); + } + + /** + * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::TagResource, request, handler, context); + } + + /** + *

Removes a key-value pair from a monitor or probe.

See Also:

+ * AWS + * API Reference

+ */ + virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; + + /** + * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::UntagResource, request); + } + + /** + * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::UntagResource, request, handler, context); + } + + /** + *

Updates the aggregationPeriod for a monitor. Monitors support an + * aggregationPeriod of either 30 or 60 + * seconds.

See Also:

AWS + * API Reference

+ */ + virtual Model::UpdateMonitorOutcome UpdateMonitor(const Model::UpdateMonitorRequest& request) const; + + /** + * A Callable wrapper for UpdateMonitor that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::UpdateMonitorOutcomeCallable UpdateMonitorCallable(const UpdateMonitorRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::UpdateMonitor, request); + } + + /** + * An Async wrapper for UpdateMonitor that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void UpdateMonitorAsync(const UpdateMonitorRequestT& request, const UpdateMonitorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::UpdateMonitor, request, handler, context); + } + + /** + *

Updates a monitor probe. This action requires both the + * monitorName and probeId parameters. Run + * ListMonitors to get a list of monitor names. Run + * GetMonitor to get a list of probes and probe IDs.

See + * Also:

AWS + * API Reference

+ */ + virtual Model::UpdateProbeOutcome UpdateProbe(const Model::UpdateProbeRequest& request) const; + + /** + * A Callable wrapper for UpdateProbe that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::UpdateProbeOutcomeCallable UpdateProbeCallable(const UpdateProbeRequestT& request) const + { + return SubmitCallable(&NetworkMonitorClient::UpdateProbe, request); + } + + /** + * An Async wrapper for UpdateProbe that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void UpdateProbeAsync(const UpdateProbeRequestT& request, const UpdateProbeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&NetworkMonitorClient::UpdateProbe, request, handler, context); + } + + + void OverrideEndpoint(const Aws::String& endpoint); + std::shared_ptr& accessEndpointProvider(); + private: + friend class Aws::Client::ClientWithAsyncTemplateMethods; + void init(const NetworkMonitorClientConfiguration& clientConfiguration); + + NetworkMonitorClientConfiguration m_clientConfiguration; + std::shared_ptr m_executor; + std::shared_ptr m_endpointProvider; + }; + +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointProvider.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointProvider.h new file mode 100644 index 00000000000..488d851638b --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointProvider.h @@ -0,0 +1,61 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include + +#include + + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Endpoint +{ +using EndpointParameters = Aws::Endpoint::EndpointParameters; +using Aws::Endpoint::EndpointProviderBase; +using Aws::Endpoint::DefaultEndpointProvider; + +using NetworkMonitorClientContextParameters = Aws::Endpoint::ClientContextParameters; + +using NetworkMonitorClientConfiguration = Aws::Client::GenericClientConfiguration; +using NetworkMonitorBuiltInParameters = Aws::Endpoint::BuiltInParameters; + +/** + * The type for the NetworkMonitor Client Endpoint Provider. + * Inherit from this Base class / "Interface" should you want to provide a custom endpoint provider. + * The SDK must use service-specific type for each service per specification. + */ +using NetworkMonitorEndpointProviderBase = + EndpointProviderBase; + +using NetworkMonitorDefaultEpProviderBase = + DefaultEndpointProvider; + +/** + * Default endpoint provider used for this service + */ +class AWS_NETWORKMONITOR_API NetworkMonitorEndpointProvider : public NetworkMonitorDefaultEpProviderBase +{ +public: + using NetworkMonitorResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome; + + NetworkMonitorEndpointProvider() + : NetworkMonitorDefaultEpProviderBase(Aws::NetworkMonitor::NetworkMonitorEndpointRules::GetRulesBlob(), Aws::NetworkMonitor::NetworkMonitorEndpointRules::RulesBlobSize) + {} + + ~NetworkMonitorEndpointProvider() + { + } +}; +} // namespace Endpoint +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointRules.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointRules.h new file mode 100644 index 00000000000..2a3d3428099 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorEndpointRules.h @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +class NetworkMonitorEndpointRules +{ +public: + static const size_t RulesBlobStrLen; + static const size_t RulesBlobSize; + + static const char* GetRulesBlob(); +}; +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrorMarshaller.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrorMarshaller.h new file mode 100644 index 00000000000..b66d1bebd3a --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrorMarshaller.h @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once + +#include +#include + +namespace Aws +{ +namespace Client +{ + +class AWS_NETWORKMONITOR_API NetworkMonitorErrorMarshaller : public Aws::Client::JsonErrorMarshaller +{ +public: + Aws::Client::AWSError FindErrorByName(const char* exceptionName) const override; +}; + +} // namespace Client +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrors.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrors.h new file mode 100644 index 00000000000..47027e16e69 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorErrors.h @@ -0,0 +1,74 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once + +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +enum class NetworkMonitorErrors +{ + //From Core// + ////////////////////////////////////////////////////////////////////////////////////////// + INCOMPLETE_SIGNATURE = 0, + INTERNAL_FAILURE = 1, + INVALID_ACTION = 2, + INVALID_CLIENT_TOKEN_ID = 3, + INVALID_PARAMETER_COMBINATION = 4, + INVALID_QUERY_PARAMETER = 5, + INVALID_PARAMETER_VALUE = 6, + MISSING_ACTION = 7, // SDK should never allow + MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow + MISSING_PARAMETER = 9, // SDK should never allow + OPT_IN_REQUIRED = 10, + REQUEST_EXPIRED = 11, + SERVICE_UNAVAILABLE = 12, + THROTTLING = 13, + VALIDATION = 14, + ACCESS_DENIED = 15, + RESOURCE_NOT_FOUND = 16, + UNRECOGNIZED_CLIENT = 17, + MALFORMED_QUERY_STRING = 18, + SLOW_DOWN = 19, + REQUEST_TIME_TOO_SKEWED = 20, + INVALID_SIGNATURE = 21, + SIGNATURE_DOES_NOT_MATCH = 22, + INVALID_ACCESS_KEY_ID = 23, + REQUEST_TIMEOUT = 24, + NETWORK_CONNECTION = 99, + + UNKNOWN = 100, + /////////////////////////////////////////////////////////////////////////////////////////// + + CONFLICT= static_cast(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1, + INTERNAL_SERVER, + SERVICE_QUOTA_EXCEEDED +}; + +class AWS_NETWORKMONITOR_API NetworkMonitorError : public Aws::Client::AWSError +{ +public: + NetworkMonitorError() {} + NetworkMonitorError(const Aws::Client::AWSError& rhs) : Aws::Client::AWSError(rhs) {} + NetworkMonitorError(Aws::Client::AWSError&& rhs) : Aws::Client::AWSError(rhs) {} + NetworkMonitorError(const Aws::Client::AWSError& rhs) : Aws::Client::AWSError(rhs) {} + NetworkMonitorError(Aws::Client::AWSError&& rhs) : Aws::Client::AWSError(rhs) {} + + template + T GetModeledError(); +}; + +namespace NetworkMonitorErrorMapper +{ + AWS_NETWORKMONITOR_API Aws::Client::AWSError GetErrorForName(const char* errorName); +} + +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorRequest.h new file mode 100644 index 00000000000..3548898814c --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorRequest.h @@ -0,0 +1,46 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ + class AWS_NETWORKMONITOR_API NetworkMonitorRequest : public Aws::AmazonSerializableWebServiceRequest + { + public: + using EndpointParameter = Aws::Endpoint::EndpointParameter; + using EndpointParameters = Aws::Endpoint::EndpointParameters; + + virtual ~NetworkMonitorRequest () {} + + void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); } + + inline Aws::Http::HeaderValueCollection GetHeaders() const override + { + auto headers = GetRequestSpecificHeaders(); + + if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0)) + { + headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::JSON_CONTENT_TYPE )); + } + headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2023-08-01")); + return headers; + } + + protected: + virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); } + + }; + + +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorServiceClientModel.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorServiceClientModel.h new file mode 100644 index 00000000000..98cdb01c43b --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitorServiceClientModel.h @@ -0,0 +1,135 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once + +/* Generic header includes */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +/* End of generic header includes */ + +/* Service model headers required in NetworkMonitorClient header */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +/* End of service model headers required in NetworkMonitorClient header */ + +namespace Aws +{ + namespace Http + { + class HttpClient; + class HttpClientFactory; + } // namespace Http + + namespace Utils + { + template< typename R, typename E> class Outcome; + + namespace Threading + { + class Executor; + } // namespace Threading + } // namespace Utils + + namespace Auth + { + class AWSCredentials; + class AWSCredentialsProvider; + } // namespace Auth + + namespace Client + { + class RetryStrategy; + } // namespace Client + + namespace NetworkMonitor + { + using NetworkMonitorClientConfiguration = Aws::Client::GenericClientConfiguration; + using NetworkMonitorEndpointProviderBase = Aws::NetworkMonitor::Endpoint::NetworkMonitorEndpointProviderBase; + using NetworkMonitorEndpointProvider = Aws::NetworkMonitor::Endpoint::NetworkMonitorEndpointProvider; + + namespace Model + { + /* Service model forward declarations required in NetworkMonitorClient header */ + class CreateMonitorRequest; + class CreateProbeRequest; + class DeleteMonitorRequest; + class DeleteProbeRequest; + class GetMonitorRequest; + class GetProbeRequest; + class ListMonitorsRequest; + class ListTagsForResourceRequest; + class TagResourceRequest; + class UntagResourceRequest; + class UpdateMonitorRequest; + class UpdateProbeRequest; + /* End of service model forward declarations required in NetworkMonitorClient header */ + + /* Service model Outcome class definitions */ + typedef Aws::Utils::Outcome CreateMonitorOutcome; + typedef Aws::Utils::Outcome CreateProbeOutcome; + typedef Aws::Utils::Outcome DeleteMonitorOutcome; + typedef Aws::Utils::Outcome DeleteProbeOutcome; + typedef Aws::Utils::Outcome GetMonitorOutcome; + typedef Aws::Utils::Outcome GetProbeOutcome; + typedef Aws::Utils::Outcome ListMonitorsOutcome; + typedef Aws::Utils::Outcome ListTagsForResourceOutcome; + typedef Aws::Utils::Outcome TagResourceOutcome; + typedef Aws::Utils::Outcome UntagResourceOutcome; + typedef Aws::Utils::Outcome UpdateMonitorOutcome; + typedef Aws::Utils::Outcome UpdateProbeOutcome; + /* End of service model Outcome class definitions */ + + /* Service model Outcome callable definitions */ + typedef std::future CreateMonitorOutcomeCallable; + typedef std::future CreateProbeOutcomeCallable; + typedef std::future DeleteMonitorOutcomeCallable; + typedef std::future DeleteProbeOutcomeCallable; + typedef std::future GetMonitorOutcomeCallable; + typedef std::future GetProbeOutcomeCallable; + typedef std::future ListMonitorsOutcomeCallable; + typedef std::future ListTagsForResourceOutcomeCallable; + typedef std::future TagResourceOutcomeCallable; + typedef std::future UntagResourceOutcomeCallable; + typedef std::future UpdateMonitorOutcomeCallable; + typedef std::future UpdateProbeOutcomeCallable; + /* End of service model Outcome callable definitions */ + } // namespace Model + + class NetworkMonitorClient; + + /* Service model async handlers definitions */ + typedef std::function&) > CreateMonitorResponseReceivedHandler; + typedef std::function&) > CreateProbeResponseReceivedHandler; + typedef std::function&) > DeleteMonitorResponseReceivedHandler; + typedef std::function&) > DeleteProbeResponseReceivedHandler; + typedef std::function&) > GetMonitorResponseReceivedHandler; + typedef std::function&) > GetProbeResponseReceivedHandler; + typedef std::function&) > ListMonitorsResponseReceivedHandler; + typedef std::function&) > ListTagsForResourceResponseReceivedHandler; + typedef std::function&) > TagResourceResponseReceivedHandler; + typedef std::function&) > UntagResourceResponseReceivedHandler; + typedef std::function&) > UpdateMonitorResponseReceivedHandler; + typedef std::function&) > UpdateProbeResponseReceivedHandler; + /* End of service model async handlers definitions */ + } // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitor_EXPORTS.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitor_EXPORTS.h new file mode 100644 index 00000000000..07f543b7263 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/NetworkMonitor_EXPORTS.h @@ -0,0 +1,32 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once + +#ifdef _MSC_VER + //disable windows complaining about max template size. + #pragma warning (disable : 4503) +#endif // _MSC_VER + +#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32) + #ifdef _MSC_VER + #pragma warning(disable : 4251) + #endif // _MSC_VER + + #ifdef USE_IMPORT_EXPORT + #ifdef AWS_NETWORKMONITOR_EXPORTS + #define AWS_NETWORKMONITOR_API __declspec(dllexport) + #else + #define AWS_NETWORKMONITOR_API __declspec(dllimport) + #endif /* AWS_NETWORKMONITOR_EXPORTS */ + #define AWS_NETWORKMONITOR_EXTERN + #else + #define AWS_NETWORKMONITOR_API + #define AWS_NETWORKMONITOR_EXTERN extern + #endif // USE_IMPORT_EXPORT +#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32) + #define AWS_NETWORKMONITOR_API + #define AWS_NETWORKMONITOR_EXTERN extern +#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32) diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/AddressFamily.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/AddressFamily.h new file mode 100644 index 00000000000..4d040792872 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/AddressFamily.h @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + enum class AddressFamily + { + NOT_SET, + IPV4, + IPV6 + }; + +namespace AddressFamilyMapper +{ +AWS_NETWORKMONITOR_API AddressFamily GetAddressFamilyForName(const Aws::String& name); + +AWS_NETWORKMONITOR_API Aws::String GetNameForAddressFamily(AddressFamily value); +} // namespace AddressFamilyMapper +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorProbeInput.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorProbeInput.h new file mode 100644 index 00000000000..d994bb2d7f2 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorProbeInput.h @@ -0,0 +1,317 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + + /** + *

Creates a monitor probe.

See Also:

AWS + * API Reference

+ */ + class CreateMonitorProbeInput + { + public: + AWS_NETWORKMONITOR_API CreateMonitorProbeInput(); + AWS_NETWORKMONITOR_API CreateMonitorProbeInput(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API CreateMonitorProbeInput& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The ARN of the subnet.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The ARN of the subnet.

+ */ + inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArnHasBeenSet = true; m_sourceArn = value; } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArnHasBeenSet = true; m_sourceArn = std::move(value); } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArnHasBeenSet = true; m_sourceArn.assign(value); } + + /** + *

The ARN of the subnet.

+ */ + inline CreateMonitorProbeInput& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The ARN of the subnet.

+ */ + inline CreateMonitorProbeInput& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the subnet.

+ */ + inline CreateMonitorProbeInput& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline CreateMonitorProbeInput& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline CreateMonitorProbeInput& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline CreateMonitorProbeInput& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline bool DestinationPortHasBeenSet() const { return m_destinationPortHasBeenSet; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPortHasBeenSet = true; m_destinationPort = value; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline CreateMonitorProbeInput& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline CreateMonitorProbeInput& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline CreateMonitorProbeInput& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline bool PacketSizeHasBeenSet() const { return m_packetSizeHasBeenSet; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline void SetPacketSize(int value) { m_packetSizeHasBeenSet = true; m_packetSize = value; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline CreateMonitorProbeInput& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline const Aws::Map& GetProbeTags() const{ return m_probeTags; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline bool ProbeTagsHasBeenSet() const { return m_probeTagsHasBeenSet; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetProbeTags(const Aws::Map& value) { m_probeTagsHasBeenSet = true; m_probeTags = value; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetProbeTags(Aws::Map&& value) { m_probeTagsHasBeenSet = true; m_probeTags = std::move(value); } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& WithProbeTags(const Aws::Map& value) { SetProbeTags(value); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& WithProbeTags(Aws::Map&& value) { SetProbeTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(const Aws::String& key, const Aws::String& value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(Aws::String&& key, const Aws::String& value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(const Aws::String& key, Aws::String&& value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(Aws::String&& key, Aws::String&& value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(const char* key, Aws::String&& value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(Aws::String&& key, const char* value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorProbeInput& AddProbeTags(const char* key, const char* value) { m_probeTagsHasBeenSet = true; m_probeTags.emplace(key, value); return *this; } + + private: + + Aws::String m_sourceArn; + bool m_sourceArnHasBeenSet = false; + + Aws::String m_destination; + bool m_destinationHasBeenSet = false; + + int m_destinationPort; + bool m_destinationPortHasBeenSet = false; + + Protocol m_protocol; + bool m_protocolHasBeenSet = false; + + int m_packetSize; + bool m_packetSizeHasBeenSet = false; + + Aws::Map m_probeTags; + bool m_probeTagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorRequest.h new file mode 100644 index 00000000000..2abd6cbc276 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorRequest.h @@ -0,0 +1,288 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class CreateMonitorRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API CreateMonitorRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "CreateMonitor"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline CreateMonitorRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline CreateMonitorRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name identifying the monitor. It can contain only letters, underscores + * (_), or dashes (-), and can be up to 255 characters.

+ */ + inline CreateMonitorRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline const Aws::Vector& GetProbes() const{ return m_probes; } + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline bool ProbesHasBeenSet() const { return m_probesHasBeenSet; } + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline void SetProbes(const Aws::Vector& value) { m_probesHasBeenSet = true; m_probes = value; } + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline void SetProbes(Aws::Vector&& value) { m_probesHasBeenSet = true; m_probes = std::move(value); } + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline CreateMonitorRequest& WithProbes(const Aws::Vector& value) { SetProbes(value); return *this;} + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline CreateMonitorRequest& WithProbes(Aws::Vector&& value) { SetProbes(std::move(value)); return *this;} + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline CreateMonitorRequest& AddProbes(const CreateMonitorProbeInput& value) { m_probesHasBeenSet = true; m_probes.push_back(value); return *this; } + + /** + *

Displays a list of all of the probes created for a monitor.

+ */ + inline CreateMonitorRequest& AddProbes(CreateMonitorProbeInput&& value) { m_probesHasBeenSet = true; m_probes.push_back(std::move(value)); return *this; } + + + /** + *

The time, in seconds, that metrics are aggregated and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The time, in seconds, that metrics are aggregated and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline bool AggregationPeriodHasBeenSet() const { return m_aggregationPeriodHasBeenSet; } + + /** + *

The time, in seconds, that metrics are aggregated and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriodHasBeenSet = true; m_aggregationPeriod = value; } + + /** + *

The time, in seconds, that metrics are aggregated and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline CreateMonitorRequest& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline const Aws::String& GetClientToken() const{ return m_clientToken; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateMonitorRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateMonitorRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateMonitorRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} + + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline CreateMonitorRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + Aws::Vector m_probes; + bool m_probesHasBeenSet = false; + + long long m_aggregationPeriod; + bool m_aggregationPeriodHasBeenSet = false; + + Aws::String m_clientToken; + bool m_clientTokenHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorResult.h new file mode 100644 index 00000000000..552cd2e8a85 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateMonitorResult.h @@ -0,0 +1,253 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class CreateMonitorResult + { + public: + AWS_NETWORKMONITOR_API CreateMonitorResult(); + AWS_NETWORKMONITOR_API CreateMonitorResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API CreateMonitorResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The ARN of the monitor.

+ */ + inline const Aws::String& GetMonitorArn() const{ return m_monitorArn; } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(const Aws::String& value) { m_monitorArn = value; } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(Aws::String&& value) { m_monitorArn = std::move(value); } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(const char* value) { m_monitorArn.assign(value); } + + /** + *

The ARN of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorArn(const Aws::String& value) { SetMonitorArn(value); return *this;} + + /** + *

The ARN of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorArn(Aws::String&& value) { SetMonitorArn(std::move(value)); return *this;} + + /** + *

The ARN of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorArn(const char* value) { SetMonitorArn(value); return *this;} + + + /** + *

The name of the monitor.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorName = value; } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorName = std::move(value); } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(const char* value) { m_monitorName.assign(value); } + + /** + *

The name of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor.

+ */ + inline CreateMonitorResult& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The state of the monitor.

+ */ + inline const MonitorState& GetState() const{ return m_state; } + + /** + *

The state of the monitor.

+ */ + inline void SetState(const MonitorState& value) { m_state = value; } + + /** + *

The state of the monitor.

+ */ + inline void SetState(MonitorState&& value) { m_state = std::move(value); } + + /** + *

The state of the monitor.

+ */ + inline CreateMonitorResult& WithState(const MonitorState& value) { SetState(value); return *this;} + + /** + *

The state of the monitor.

+ */ + inline CreateMonitorResult& WithState(MonitorState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The number of seconds that metrics are aggregated by and sent to Amazon + * CloudWatch. This will be either 30 or 60.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The number of seconds that metrics are aggregated by and sent to Amazon + * CloudWatch. This will be either 30 or 60.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriod = value; } + + /** + *

The number of seconds that metrics are aggregated by and sent to Amazon + * CloudWatch. This will be either 30 or 60.

+ */ + inline CreateMonitorResult& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline CreateMonitorResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline CreateMonitorResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline CreateMonitorResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline CreateMonitorResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_monitorArn; + + Aws::String m_monitorName; + + MonitorState m_state; + + long long m_aggregationPeriod; + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeRequest.h new file mode 100644 index 00000000000..80c421ae73e --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeRequest.h @@ -0,0 +1,249 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class CreateProbeRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API CreateProbeRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "CreateProbe"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline CreateProbeRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline CreateProbeRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor to associated with the probe. To get a list of + * available monitors, use ListMonitors.

+ */ + inline CreateProbeRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline const ProbeInput& GetProbe() const{ return m_probe; } + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline bool ProbeHasBeenSet() const { return m_probeHasBeenSet; } + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline void SetProbe(const ProbeInput& value) { m_probeHasBeenSet = true; m_probe = value; } + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline void SetProbe(ProbeInput&& value) { m_probeHasBeenSet = true; m_probe = std::move(value); } + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline CreateProbeRequest& WithProbe(const ProbeInput& value) { SetProbe(value); return *this;} + + /** + *

Describes the details of an individual probe for a monitor.

+ */ + inline CreateProbeRequest& WithProbe(ProbeInput&& value) { SetProbe(std::move(value)); return *this;} + + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline const Aws::String& GetClientToken() const{ return m_clientToken; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateProbeRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateProbeRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} + + /** + *

Unique, case-sensitive identifier to ensure the idempotency of the request. + * Only returned if a client token was provided in the request.

+ */ + inline CreateProbeRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} + + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline CreateProbeRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + ProbeInput m_probe; + bool m_probeHasBeenSet = false; + + Aws::String m_clientToken; + bool m_clientTokenHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeResult.h new file mode 100644 index 00000000000..4d4acdfcffa --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/CreateProbeResult.h @@ -0,0 +1,528 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class CreateProbeResult + { + public: + AWS_NETWORKMONITOR_API CreateProbeResult(); + AWS_NETWORKMONITOR_API CreateProbeResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API CreateProbeResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The ID of the probe for which details are returned.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeId = value; } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeId = std::move(value); } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(const char* value) { m_probeId.assign(value); } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline CreateProbeResult& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The ID of the probe for which details are returned.

+ */ + inline CreateProbeResult& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The ID of the probe for which details are returned.

+ */ + inline CreateProbeResult& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + + /** + *

The ARN of the probe.

+ */ + inline const Aws::String& GetProbeArn() const{ return m_probeArn; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const Aws::String& value) { m_probeArn = value; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(Aws::String&& value) { m_probeArn = std::move(value); } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const char* value) { m_probeArn.assign(value); } + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithProbeArn(const Aws::String& value) { SetProbeArn(value); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithProbeArn(Aws::String&& value) { SetProbeArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithProbeArn(const char* value) { SetProbeArn(value); return *this;} + + + /** + *

The ARN of the probe.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArn = value; } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArn = std::move(value); } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArn.assign(value); } + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline CreateProbeResult& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(const Aws::String& value) { m_destination = value; } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(Aws::String&& value) { m_destination = std::move(value); } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(const char* value) { m_destination.assign(value); } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline CreateProbeResult& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline CreateProbeResult& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline CreateProbeResult& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPort = value; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline CreateProbeResult& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocol = value; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocol = std::move(value); } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline CreateProbeResult& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline CreateProbeResult& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline void SetPacketSize(int value) { m_packetSize = value; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline CreateProbeResult& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline const AddressFamily& GetAddressFamily() const{ return m_addressFamily; } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(const AddressFamily& value) { m_addressFamily = value; } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(AddressFamily&& value) { m_addressFamily = std::move(value); } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline CreateProbeResult& WithAddressFamily(const AddressFamily& value) { SetAddressFamily(value); return *this;} + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline CreateProbeResult& WithAddressFamily(AddressFamily&& value) { SetAddressFamily(std::move(value)); return *this;} + + + /** + *

The ID of the source VPC or subnet.

+ */ + inline const Aws::String& GetVpcId() const{ return m_vpcId; } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(const Aws::String& value) { m_vpcId = value; } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(Aws::String&& value) { m_vpcId = std::move(value); } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(const char* value) { m_vpcId.assign(value); } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline CreateProbeResult& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} + + /** + *

The ID of the source VPC or subnet.

+ */ + inline CreateProbeResult& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} + + /** + *

The ID of the source VPC or subnet.

+ */ + inline CreateProbeResult& WithVpcId(const char* value) { SetVpcId(value); return *this;} + + + /** + *

The state of the probe.

+ */ + inline const ProbeState& GetState() const{ return m_state; } + + /** + *

The state of the probe.

+ */ + inline void SetState(const ProbeState& value) { m_state = value; } + + /** + *

The state of the probe.

+ */ + inline void SetState(ProbeState&& value) { m_state = std::move(value); } + + /** + *

The state of the probe.

+ */ + inline CreateProbeResult& WithState(const ProbeState& value) { SetState(value); return *this;} + + /** + *

The state of the probe.

+ */ + inline CreateProbeResult& WithState(ProbeState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } + + /** + *

The time and date that the probe was created.

+ */ + inline CreateProbeResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *

The time and date that the probe was created.

+ */ + inline CreateProbeResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *

The time and date when the probe was last modified.

+ */ + inline const Aws::Utils::DateTime& GetModifiedAt() const{ return m_modifiedAt; } + + /** + *

The time and date when the probe was last modified.

+ */ + inline void SetModifiedAt(const Aws::Utils::DateTime& value) { m_modifiedAt = value; } + + /** + *

The time and date when the probe was last modified.

+ */ + inline void SetModifiedAt(Aws::Utils::DateTime&& value) { m_modifiedAt = std::move(value); } + + /** + *

The time and date when the probe was last modified.

+ */ + inline CreateProbeResult& WithModifiedAt(const Aws::Utils::DateTime& value) { SetModifiedAt(value); return *this;} + + /** + *

The time and date when the probe was last modified.

+ */ + inline CreateProbeResult& WithModifiedAt(Aws::Utils::DateTime&& value) { SetModifiedAt(std::move(value)); return *this;} + + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline CreateProbeResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline CreateProbeResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline CreateProbeResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline CreateProbeResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_probeId; + + Aws::String m_probeArn; + + Aws::String m_sourceArn; + + Aws::String m_destination; + + int m_destinationPort; + + Protocol m_protocol; + + int m_packetSize; + + AddressFamily m_addressFamily; + + Aws::String m_vpcId; + + ProbeState m_state; + + Aws::Utils::DateTime m_createdAt; + + Aws::Utils::DateTime m_modifiedAt; + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorRequest.h new file mode 100644 index 00000000000..d7df4474a07 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorRequest.h @@ -0,0 +1,91 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class DeleteMonitorRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API DeleteMonitorRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DeleteMonitor"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline DeleteMonitorRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline DeleteMonitorRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor to delete. Use the ListMonitors action + * to get a list of your current monitors.

+ */ + inline DeleteMonitorRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorResult.h new file mode 100644 index 00000000000..789774ba9ce --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteMonitorResult.h @@ -0,0 +1,63 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class DeleteMonitorResult + { + public: + AWS_NETWORKMONITOR_API DeleteMonitorResult(); + AWS_NETWORKMONITOR_API DeleteMonitorResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API DeleteMonitorResult& operator=(const Aws::AmazonWebServiceResult& result); + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline DeleteMonitorResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline DeleteMonitorResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline DeleteMonitorResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeRequest.h new file mode 100644 index 00000000000..b9e9c84207d --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeRequest.h @@ -0,0 +1,143 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class DeleteProbeRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API DeleteProbeRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DeleteProbe"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline DeleteProbeRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline DeleteProbeRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor to delete. For a list of the available monitors, use + * the ListMonitors action.

+ */ + inline DeleteProbeRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline bool ProbeIdHasBeenSet() const { return m_probeIdHasBeenSet; } + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeIdHasBeenSet = true; m_probeId = value; } + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeIdHasBeenSet = true; m_probeId = std::move(value); } + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline void SetProbeId(const char* value) { m_probeIdHasBeenSet = true; m_probeId.assign(value); } + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline DeleteProbeRequest& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline DeleteProbeRequest& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The ID of the probe to delete. Run GetMonitor to get a lst of + * all probes and probe IDs associated with the monitor.

+ */ + inline DeleteProbeRequest& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + Aws::String m_probeId; + bool m_probeIdHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeResult.h new file mode 100644 index 00000000000..617e602ddbc --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/DeleteProbeResult.h @@ -0,0 +1,63 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class DeleteProbeResult + { + public: + AWS_NETWORKMONITOR_API DeleteProbeResult(); + AWS_NETWORKMONITOR_API DeleteProbeResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API DeleteProbeResult& operator=(const Aws::AmazonWebServiceResult& result); + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline DeleteProbeResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline DeleteProbeResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline DeleteProbeResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorRequest.h new file mode 100644 index 00000000000..46041a1d276 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorRequest.h @@ -0,0 +1,83 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class GetMonitorRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API GetMonitorRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "GetMonitor"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor that details are returned for.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor that details are returned for.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor that details are returned for.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor that details are returned for.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor that details are returned for.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor that details are returned for.

+ */ + inline GetMonitorRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor that details are returned for.

+ */ + inline GetMonitorRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor that details are returned for.

+ */ + inline GetMonitorRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorResult.h new file mode 100644 index 00000000000..cbaf9331d93 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetMonitorResult.h @@ -0,0 +1,354 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class GetMonitorResult + { + public: + AWS_NETWORKMONITOR_API GetMonitorResult(); + AWS_NETWORKMONITOR_API GetMonitorResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API GetMonitorResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The ARN of the selected monitor.

+ */ + inline const Aws::String& GetMonitorArn() const{ return m_monitorArn; } + + /** + *

The ARN of the selected monitor.

+ */ + inline void SetMonitorArn(const Aws::String& value) { m_monitorArn = value; } + + /** + *

The ARN of the selected monitor.

+ */ + inline void SetMonitorArn(Aws::String&& value) { m_monitorArn = std::move(value); } + + /** + *

The ARN of the selected monitor.

+ */ + inline void SetMonitorArn(const char* value) { m_monitorArn.assign(value); } + + /** + *

The ARN of the selected monitor.

+ */ + inline GetMonitorResult& WithMonitorArn(const Aws::String& value) { SetMonitorArn(value); return *this;} + + /** + *

The ARN of the selected monitor.

+ */ + inline GetMonitorResult& WithMonitorArn(Aws::String&& value) { SetMonitorArn(std::move(value)); return *this;} + + /** + *

The ARN of the selected monitor.

+ */ + inline GetMonitorResult& WithMonitorArn(const char* value) { SetMonitorArn(value); return *this;} + + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorName = value; } + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorName = std::move(value); } + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline void SetMonitorName(const char* value) { m_monitorName.assign(value); } + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline GetMonitorResult& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline GetMonitorResult& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor. To get a list of the current monitors and their + * names, use the ListMonitors action.

+ */ + inline GetMonitorResult& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

Returns a list of the state of each monitor.

+ */ + inline const MonitorState& GetState() const{ return m_state; } + + /** + *

Returns a list of the state of each monitor.

+ */ + inline void SetState(const MonitorState& value) { m_state = value; } + + /** + *

Returns a list of the state of each monitor.

+ */ + inline void SetState(MonitorState&& value) { m_state = std::move(value); } + + /** + *

Returns a list of the state of each monitor.

+ */ + inline GetMonitorResult& WithState(const MonitorState& value) { SetState(value); return *this;} + + /** + *

Returns a list of the state of each monitor.

+ */ + inline GetMonitorResult& WithState(MonitorState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The aggregation period for the specified monitor.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The aggregation period for the specified monitor.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriod = value; } + + /** + *

The aggregation period for the specified monitor.

+ */ + inline GetMonitorResult& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline GetMonitorResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + /** + *

The details about each probe associated with that monitor.

+ */ + inline const Aws::Vector& GetProbes() const{ return m_probes; } + + /** + *

The details about each probe associated with that monitor.

+ */ + inline void SetProbes(const Aws::Vector& value) { m_probes = value; } + + /** + *

The details about each probe associated with that monitor.

+ */ + inline void SetProbes(Aws::Vector&& value) { m_probes = std::move(value); } + + /** + *

The details about each probe associated with that monitor.

+ */ + inline GetMonitorResult& WithProbes(const Aws::Vector& value) { SetProbes(value); return *this;} + + /** + *

The details about each probe associated with that monitor.

+ */ + inline GetMonitorResult& WithProbes(Aws::Vector&& value) { SetProbes(std::move(value)); return *this;} + + /** + *

The details about each probe associated with that monitor.

+ */ + inline GetMonitorResult& AddProbes(const Probe& value) { m_probes.push_back(value); return *this; } + + /** + *

The details about each probe associated with that monitor.

+ */ + inline GetMonitorResult& AddProbes(Probe&& value) { m_probes.push_back(std::move(value)); return *this; } + + + /** + *

The time and date when the monitor was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *

The time and date when the monitor was created.

+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } + + /** + *

The time and date when the monitor was created.

+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } + + /** + *

The time and date when the monitor was created.

+ */ + inline GetMonitorResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *

The time and date when the monitor was created.

+ */ + inline GetMonitorResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *

The time and date when the monitor was last modified.

+ */ + inline const Aws::Utils::DateTime& GetModifiedAt() const{ return m_modifiedAt; } + + /** + *

The time and date when the monitor was last modified.

+ */ + inline void SetModifiedAt(const Aws::Utils::DateTime& value) { m_modifiedAt = value; } + + /** + *

The time and date when the monitor was last modified.

+ */ + inline void SetModifiedAt(Aws::Utils::DateTime&& value) { m_modifiedAt = std::move(value); } + + /** + *

The time and date when the monitor was last modified.

+ */ + inline GetMonitorResult& WithModifiedAt(const Aws::Utils::DateTime& value) { SetModifiedAt(value); return *this;} + + /** + *

The time and date when the monitor was last modified.

+ */ + inline GetMonitorResult& WithModifiedAt(Aws::Utils::DateTime&& value) { SetModifiedAt(std::move(value)); return *this;} + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline GetMonitorResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline GetMonitorResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline GetMonitorResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_monitorArn; + + Aws::String m_monitorName; + + MonitorState m_state; + + long long m_aggregationPeriod; + + Aws::Map m_tags; + + Aws::Vector m_probes; + + Aws::Utils::DateTime m_createdAt; + + Aws::Utils::DateTime m_modifiedAt; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeRequest.h new file mode 100644 index 00000000000..b1e0376a447 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeRequest.h @@ -0,0 +1,143 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class GetProbeRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API GetProbeRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "GetProbe"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline GetProbeRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline GetProbeRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor associated with the probe. Run + * ListMonitors to get a list of monitor names.

+ */ + inline GetProbeRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline bool ProbeIdHasBeenSet() const { return m_probeIdHasBeenSet; } + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeIdHasBeenSet = true; m_probeId = value; } + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeIdHasBeenSet = true; m_probeId = std::move(value); } + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline void SetProbeId(const char* value) { m_probeIdHasBeenSet = true; m_probeId.assign(value); } + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline GetProbeRequest& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline GetProbeRequest& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The ID of the probe to get information about. Run GetMonitor + * action to get a list of probes and probe IDs for the monitor.

+ */ + inline GetProbeRequest& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + Aws::String m_probeId; + bool m_probeIdHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeResult.h new file mode 100644 index 00000000000..89fcb2b59e3 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/GetProbeResult.h @@ -0,0 +1,528 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class GetProbeResult + { + public: + AWS_NETWORKMONITOR_API GetProbeResult(); + AWS_NETWORKMONITOR_API GetProbeResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API GetProbeResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The ID of the probe for which details are returned.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeId = value; } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeId = std::move(value); } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline void SetProbeId(const char* value) { m_probeId.assign(value); } + + /** + *

The ID of the probe for which details are returned.

+ */ + inline GetProbeResult& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The ID of the probe for which details are returned.

+ */ + inline GetProbeResult& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The ID of the probe for which details are returned.

+ */ + inline GetProbeResult& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + + /** + *

The ARN of the probe.

+ */ + inline const Aws::String& GetProbeArn() const{ return m_probeArn; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const Aws::String& value) { m_probeArn = value; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(Aws::String&& value) { m_probeArn = std::move(value); } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const char* value) { m_probeArn.assign(value); } + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithProbeArn(const Aws::String& value) { SetProbeArn(value); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithProbeArn(Aws::String&& value) { SetProbeArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithProbeArn(const char* value) { SetProbeArn(value); return *this;} + + + /** + *

The ARN of the probe.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArn = value; } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArn = std::move(value); } + + /** + *

The ARN of the probe.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArn.assign(value); } + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline GetProbeResult& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(const Aws::String& value) { m_destination = value; } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(Aws::String&& value) { m_destination = std::move(value); } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline void SetDestination(const char* value) { m_destination.assign(value); } + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline GetProbeResult& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline GetProbeResult& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The destination IP address for the monitor. This will be either an IPv4 or + * IPv6 address.

+ */ + inline GetProbeResult& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPort = value; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline GetProbeResult& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocol = value; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocol = std::move(value); } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline GetProbeResult& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline GetProbeResult& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline void SetPacketSize(int value) { m_packetSize = value; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline GetProbeResult& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline const AddressFamily& GetAddressFamily() const{ return m_addressFamily; } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(const AddressFamily& value) { m_addressFamily = value; } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(AddressFamily&& value) { m_addressFamily = std::move(value); } + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline GetProbeResult& WithAddressFamily(const AddressFamily& value) { SetAddressFamily(value); return *this;} + + /** + *

Indicates whether the IP address is IPV4 or + * IPV6.

+ */ + inline GetProbeResult& WithAddressFamily(AddressFamily&& value) { SetAddressFamily(std::move(value)); return *this;} + + + /** + *

The ID of the source VPC or subnet.

+ */ + inline const Aws::String& GetVpcId() const{ return m_vpcId; } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(const Aws::String& value) { m_vpcId = value; } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(Aws::String&& value) { m_vpcId = std::move(value); } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline void SetVpcId(const char* value) { m_vpcId.assign(value); } + + /** + *

The ID of the source VPC or subnet.

+ */ + inline GetProbeResult& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} + + /** + *

The ID of the source VPC or subnet.

+ */ + inline GetProbeResult& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} + + /** + *

The ID of the source VPC or subnet.

+ */ + inline GetProbeResult& WithVpcId(const char* value) { SetVpcId(value); return *this;} + + + /** + *

The state of the probe.

+ */ + inline const ProbeState& GetState() const{ return m_state; } + + /** + *

The state of the probe.

+ */ + inline void SetState(const ProbeState& value) { m_state = value; } + + /** + *

The state of the probe.

+ */ + inline void SetState(ProbeState&& value) { m_state = std::move(value); } + + /** + *

The state of the probe.

+ */ + inline GetProbeResult& WithState(const ProbeState& value) { SetState(value); return *this;} + + /** + *

The state of the probe.

+ */ + inline GetProbeResult& WithState(ProbeState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } + + /** + *

The time and date that the probe was created.

+ */ + inline GetProbeResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *

The time and date that the probe was created.

+ */ + inline GetProbeResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was last modified.

+ */ + inline const Aws::Utils::DateTime& GetModifiedAt() const{ return m_modifiedAt; } + + /** + *

The time and date that the probe was last modified.

+ */ + inline void SetModifiedAt(const Aws::Utils::DateTime& value) { m_modifiedAt = value; } + + /** + *

The time and date that the probe was last modified.

+ */ + inline void SetModifiedAt(Aws::Utils::DateTime&& value) { m_modifiedAt = std::move(value); } + + /** + *

The time and date that the probe was last modified.

+ */ + inline GetProbeResult& WithModifiedAt(const Aws::Utils::DateTime& value) { SetModifiedAt(value); return *this;} + + /** + *

The time and date that the probe was last modified.

+ */ + inline GetProbeResult& WithModifiedAt(Aws::Utils::DateTime&& value) { SetModifiedAt(std::move(value)); return *this;} + + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the probe.

+ */ + inline GetProbeResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline GetProbeResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline GetProbeResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline GetProbeResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_probeId; + + Aws::String m_probeArn; + + Aws::String m_sourceArn; + + Aws::String m_destination; + + int m_destinationPort; + + Protocol m_protocol; + + int m_packetSize; + + AddressFamily m_addressFamily; + + Aws::String m_vpcId; + + ProbeState m_state; + + Aws::Utils::DateTime m_createdAt; + + Aws::Utils::DateTime m_modifiedAt; + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsRequest.h new file mode 100644 index 00000000000..2da6e679f3a --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsRequest.h @@ -0,0 +1,169 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class ListMonitorsRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API ListMonitorsRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ListMonitors"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + AWS_NETWORKMONITOR_API void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

The token for the next page of results.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

The token for the next page of results.

+ */ + inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + + /** + *

The maximum number of results to return with a single call. To retrieve the + * remaining results, make another call with the returned nextToken + * value.

If MaxResults is given a value larger than 100, only + * 100 results are returned.

+ */ + inline int GetMaxResults() const{ return m_maxResults; } + + /** + *

The maximum number of results to return with a single call. To retrieve the + * remaining results, make another call with the returned nextToken + * value.

If MaxResults is given a value larger than 100, only + * 100 results are returned.

+ */ + inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } + + /** + *

The maximum number of results to return with a single call. To retrieve the + * remaining results, make another call with the returned nextToken + * value.

If MaxResults is given a value larger than 100, only + * 100 results are returned.

+ */ + inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } + + /** + *

The maximum number of results to return with a single call. To retrieve the + * remaining results, make another call with the returned nextToken + * value.

If MaxResults is given a value larger than 100, only + * 100 results are returned.

+ */ + inline ListMonitorsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + + /** + *

The list of all monitors and their states.

+ */ + inline const Aws::String& GetState() const{ return m_state; } + + /** + *

The list of all monitors and their states.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The list of all monitors and their states.

+ */ + inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The list of all monitors and their states.

+ */ + inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The list of all monitors and their states.

+ */ + inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); } + + /** + *

The list of all monitors and their states.

+ */ + inline ListMonitorsRequest& WithState(const Aws::String& value) { SetState(value); return *this;} + + /** + *

The list of all monitors and their states.

+ */ + inline ListMonitorsRequest& WithState(Aws::String&& value) { SetState(std::move(value)); return *this;} + + /** + *

The list of all monitors and their states.

+ */ + inline ListMonitorsRequest& WithState(const char* value) { SetState(value); return *this;} + + private: + + Aws::String m_nextToken; + bool m_nextTokenHasBeenSet = false; + + int m_maxResults; + bool m_maxResultsHasBeenSet = false; + + Aws::String m_state; + bool m_stateHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsResult.h new file mode 100644 index 00000000000..159c25ad46e --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListMonitorsResult.h @@ -0,0 +1,141 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class ListMonitorsResult + { + public: + AWS_NETWORKMONITOR_API ListMonitorsResult(); + AWS_NETWORKMONITOR_API ListMonitorsResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API ListMonitorsResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

Lists individual details about each of your monitors.

+ */ + inline const Aws::Vector& GetMonitors() const{ return m_monitors; } + + /** + *

Lists individual details about each of your monitors.

+ */ + inline void SetMonitors(const Aws::Vector& value) { m_monitors = value; } + + /** + *

Lists individual details about each of your monitors.

+ */ + inline void SetMonitors(Aws::Vector&& value) { m_monitors = std::move(value); } + + /** + *

Lists individual details about each of your monitors.

+ */ + inline ListMonitorsResult& WithMonitors(const Aws::Vector& value) { SetMonitors(value); return *this;} + + /** + *

Lists individual details about each of your monitors.

+ */ + inline ListMonitorsResult& WithMonitors(Aws::Vector&& value) { SetMonitors(std::move(value)); return *this;} + + /** + *

Lists individual details about each of your monitors.

+ */ + inline ListMonitorsResult& AddMonitors(const MonitorSummary& value) { m_monitors.push_back(value); return *this; } + + /** + *

Lists individual details about each of your monitors.

+ */ + inline ListMonitorsResult& AddMonitors(MonitorSummary&& value) { m_monitors.push_back(std::move(value)); return *this; } + + + /** + *

The token for the next page of results.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } + + /** + *

The token for the next page of results.

+ */ + inline void SetNextToken(const char* value) { m_nextToken.assign(value); } + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

The token for the next page of results.

+ */ + inline ListMonitorsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline ListMonitorsResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline ListMonitorsResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline ListMonitorsResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::Vector m_monitors; + + Aws::String m_nextToken; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceRequest.h new file mode 100644 index 00000000000..75b9df212a7 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceRequest.h @@ -0,0 +1,83 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class ListTagsForResourceRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API ListTagsForResourceRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ListTagsForResource"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The

+ */ + inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } + + /** + *

The

+ */ + inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } + + /** + *

The

+ */ + inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } + + /** + *

The

+ */ + inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } + + /** + *

The

+ */ + inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } + + /** + *

The

+ */ + inline ListTagsForResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} + + /** + *

The

+ */ + inline ListTagsForResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} + + /** + *

The

+ */ + inline ListTagsForResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} + + private: + + Aws::String m_resourceArn; + bool m_resourceArnHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceResult.h new file mode 100644 index 00000000000..bad7486a15c --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ListTagsForResourceResult.h @@ -0,0 +1,127 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class ListTagsForResourceResult + { + public: + AWS_NETWORKMONITOR_API ListTagsForResourceResult(); + AWS_NETWORKMONITOR_API ListTagsForResourceResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API ListTagsForResourceResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

Lists the tags assigned to the resource.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

Lists the tags assigned to the resource.

+ */ + inline ListTagsForResourceResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline ListTagsForResourceResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline ListTagsForResourceResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline ListTagsForResourceResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorState.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorState.h new file mode 100644 index 00000000000..4d4661eed12 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorState.h @@ -0,0 +1,34 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + enum class MonitorState + { + NOT_SET, + PENDING, + ACTIVE, + INACTIVE, + ERROR_, + DELETING + }; + +namespace MonitorStateMapper +{ +AWS_NETWORKMONITOR_API MonitorState GetMonitorStateForName(const Aws::String& name); + +AWS_NETWORKMONITOR_API Aws::String GetNameForMonitorState(MonitorState value); +} // namespace MonitorStateMapper +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorSummary.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorSummary.h new file mode 100644 index 00000000000..8173b19f44a --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/MonitorSummary.h @@ -0,0 +1,265 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + + /** + *

Displays summary information about a monitor.

See Also:

AWS + * API Reference

+ */ + class MonitorSummary + { + public: + AWS_NETWORKMONITOR_API MonitorSummary(); + AWS_NETWORKMONITOR_API MonitorSummary(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API MonitorSummary& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The ARN of the monitor.

+ */ + inline const Aws::String& GetMonitorArn() const{ return m_monitorArn; } + + /** + *

The ARN of the monitor.

+ */ + inline bool MonitorArnHasBeenSet() const { return m_monitorArnHasBeenSet; } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(const Aws::String& value) { m_monitorArnHasBeenSet = true; m_monitorArn = value; } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(Aws::String&& value) { m_monitorArnHasBeenSet = true; m_monitorArn = std::move(value); } + + /** + *

The ARN of the monitor.

+ */ + inline void SetMonitorArn(const char* value) { m_monitorArnHasBeenSet = true; m_monitorArn.assign(value); } + + /** + *

The ARN of the monitor.

+ */ + inline MonitorSummary& WithMonitorArn(const Aws::String& value) { SetMonitorArn(value); return *this;} + + /** + *

The ARN of the monitor.

+ */ + inline MonitorSummary& WithMonitorArn(Aws::String&& value) { SetMonitorArn(std::move(value)); return *this;} + + /** + *

The ARN of the monitor.

+ */ + inline MonitorSummary& WithMonitorArn(const char* value) { SetMonitorArn(value); return *this;} + + + /** + *

The name of the monitor.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor.

+ */ + inline MonitorSummary& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor.

+ */ + inline MonitorSummary& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor.

+ */ + inline MonitorSummary& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The state of the monitor.

+ */ + inline const MonitorState& GetState() const{ return m_state; } + + /** + *

The state of the monitor.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The state of the monitor.

+ */ + inline void SetState(const MonitorState& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The state of the monitor.

+ */ + inline void SetState(MonitorState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The state of the monitor.

+ */ + inline MonitorSummary& WithState(const MonitorState& value) { SetState(value); return *this;} + + /** + *

The state of the monitor.

+ */ + inline MonitorSummary& WithState(MonitorState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time, in seconds, that metrics are collected and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The time, in seconds, that metrics are collected and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline bool AggregationPeriodHasBeenSet() const { return m_aggregationPeriodHasBeenSet; } + + /** + *

The time, in seconds, that metrics are collected and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriodHasBeenSet = true; m_aggregationPeriod = value; } + + /** + *

The time, in seconds, that metrics are collected and sent to Amazon + * CloudWatch. Valid values are either 30 or 60.

+ */ + inline MonitorSummary& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor.

+ */ + inline MonitorSummary& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_monitorArn; + bool m_monitorArnHasBeenSet = false; + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + MonitorState m_state; + bool m_stateHasBeenSet = false; + + long long m_aggregationPeriod; + bool m_aggregationPeriodHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Probe.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Probe.h new file mode 100644 index 00000000000..646d73cceb3 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Probe.h @@ -0,0 +1,588 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + + /** + *

Describes information about a monitor probe.

See Also:

AWS + * API Reference

+ */ + class Probe + { + public: + AWS_NETWORKMONITOR_API Probe(); + AWS_NETWORKMONITOR_API Probe(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API Probe& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The ID of the probe.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The ID of the probe.

+ */ + inline bool ProbeIdHasBeenSet() const { return m_probeIdHasBeenSet; } + + /** + *

The ID of the probe.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeIdHasBeenSet = true; m_probeId = value; } + + /** + *

The ID of the probe.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeIdHasBeenSet = true; m_probeId = std::move(value); } + + /** + *

The ID of the probe.

+ */ + inline void SetProbeId(const char* value) { m_probeIdHasBeenSet = true; m_probeId.assign(value); } + + /** + *

The ID of the probe.

+ */ + inline Probe& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The ID of the probe.

+ */ + inline Probe& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The ID of the probe.

+ */ + inline Probe& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + + /** + *

The ARN of the probe.

+ */ + inline const Aws::String& GetProbeArn() const{ return m_probeArn; } + + /** + *

The ARN of the probe.

+ */ + inline bool ProbeArnHasBeenSet() const { return m_probeArnHasBeenSet; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const Aws::String& value) { m_probeArnHasBeenSet = true; m_probeArn = value; } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(Aws::String&& value) { m_probeArnHasBeenSet = true; m_probeArn = std::move(value); } + + /** + *

The ARN of the probe.

+ */ + inline void SetProbeArn(const char* value) { m_probeArnHasBeenSet = true; m_probeArn.assign(value); } + + /** + *

The ARN of the probe.

+ */ + inline Probe& WithProbeArn(const Aws::String& value) { SetProbeArn(value); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline Probe& WithProbeArn(Aws::String&& value) { SetProbeArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe.

+ */ + inline Probe& WithProbeArn(const char* value) { SetProbeArn(value); return *this;} + + + /** + *

The ARN of the probe source subnet.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The ARN of the probe source subnet.

+ */ + inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; } + + /** + *

The ARN of the probe source subnet.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArnHasBeenSet = true; m_sourceArn = value; } + + /** + *

The ARN of the probe source subnet.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArnHasBeenSet = true; m_sourceArn = std::move(value); } + + /** + *

The ARN of the probe source subnet.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArnHasBeenSet = true; m_sourceArn.assign(value); } + + /** + *

The ARN of the probe source subnet.

+ */ + inline Probe& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The ARN of the probe source subnet.

+ */ + inline Probe& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the probe source subnet.

+ */ + inline Probe& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline Probe& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline Probe& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The destination for the probe. This should be either an IPV4 or + * IPV6.

+ */ + inline Probe& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The destination port for the probe. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The destination port for the probe. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline bool DestinationPortHasBeenSet() const { return m_destinationPortHasBeenSet; } + + /** + *

The destination port for the probe. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPortHasBeenSet = true; m_destinationPort = value; } + + /** + *

The destination port for the probe. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline Probe& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline Probe& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The network protocol for the destination. This can be either TCP + * or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline Probe& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The size of the packets traveling between the source and + * destination. This must be a number between 56 and

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The size of the packets traveling between the source and + * destination. This must be a number between 56 and

+ */ + inline bool PacketSizeHasBeenSet() const { return m_packetSizeHasBeenSet; } + + /** + *

The size of the packets traveling between the source and + * destination. This must be a number between 56 and

+ */ + inline void SetPacketSize(int value) { m_packetSizeHasBeenSet = true; m_packetSize = value; } + + /** + *

The size of the packets traveling between the source and + * destination. This must be a number between 56 and

+ */ + inline Probe& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline const AddressFamily& GetAddressFamily() const{ return m_addressFamily; } + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline bool AddressFamilyHasBeenSet() const { return m_addressFamilyHasBeenSet; } + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline void SetAddressFamily(const AddressFamily& value) { m_addressFamilyHasBeenSet = true; m_addressFamily = value; } + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline void SetAddressFamily(AddressFamily&& value) { m_addressFamilyHasBeenSet = true; m_addressFamily = std::move(value); } + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline Probe& WithAddressFamily(const AddressFamily& value) { SetAddressFamily(value); return *this;} + + /** + *

The IPv4 or IPv6 address for the probe.

+ */ + inline Probe& WithAddressFamily(AddressFamily&& value) { SetAddressFamily(std::move(value)); return *this;} + + + /** + *

The ID of the source VPC subnet.

+ */ + inline const Aws::String& GetVpcId() const{ return m_vpcId; } + + /** + *

The ID of the source VPC subnet.

+ */ + inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } + + /** + *

The ID of the source VPC subnet.

+ */ + inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } + + /** + *

The ID of the source VPC subnet.

+ */ + inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } + + /** + *

The ID of the source VPC subnet.

+ */ + inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } + + /** + *

The ID of the source VPC subnet.

+ */ + inline Probe& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} + + /** + *

The ID of the source VPC subnet.

+ */ + inline Probe& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} + + /** + *

The ID of the source VPC subnet.

+ */ + inline Probe& WithVpcId(const char* value) { SetVpcId(value); return *this;} + + + /** + *

The state of the probe.

+ */ + inline const ProbeState& GetState() const{ return m_state; } + + /** + *

The state of the probe.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The state of the probe.

+ */ + inline void SetState(const ProbeState& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The state of the probe.

+ */ + inline void SetState(ProbeState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The state of the probe.

+ */ + inline Probe& WithState(const ProbeState& value) { SetState(value); return *this;} + + /** + *

The state of the probe.

+ */ + inline Probe& WithState(ProbeState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time and date the probe was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *

The time and date the probe was created.

+ */ + inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } + + /** + *

The time and date the probe was created.

+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } + + /** + *

The time and date the probe was created.

+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } + + /** + *

The time and date the probe was created.

+ */ + inline Probe& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *

The time and date the probe was created.

+ */ + inline Probe& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was last modified.

+ */ + inline const Aws::Utils::DateTime& GetModifiedAt() const{ return m_modifiedAt; } + + /** + *

The time and date that the probe was last modified.

+ */ + inline bool ModifiedAtHasBeenSet() const { return m_modifiedAtHasBeenSet; } + + /** + *

The time and date that the probe was last modified.

+ */ + inline void SetModifiedAt(const Aws::Utils::DateTime& value) { m_modifiedAtHasBeenSet = true; m_modifiedAt = value; } + + /** + *

The time and date that the probe was last modified.

+ */ + inline void SetModifiedAt(Aws::Utils::DateTime&& value) { m_modifiedAtHasBeenSet = true; m_modifiedAt = std::move(value); } + + /** + *

The time and date that the probe was last modified.

+ */ + inline Probe& WithModifiedAt(const Aws::Utils::DateTime& value) { SetModifiedAt(value); return *this;} + + /** + *

The time and date that the probe was last modified.

+ */ + inline Probe& WithModifiedAt(Aws::Utils::DateTime&& value) { SetModifiedAt(std::move(value)); return *this;} + + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the probe.

+ */ + inline Probe& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_probeId; + bool m_probeIdHasBeenSet = false; + + Aws::String m_probeArn; + bool m_probeArnHasBeenSet = false; + + Aws::String m_sourceArn; + bool m_sourceArnHasBeenSet = false; + + Aws::String m_destination; + bool m_destinationHasBeenSet = false; + + int m_destinationPort; + bool m_destinationPortHasBeenSet = false; + + Protocol m_protocol; + bool m_protocolHasBeenSet = false; + + int m_packetSize; + bool m_packetSizeHasBeenSet = false; + + AddressFamily m_addressFamily; + bool m_addressFamilyHasBeenSet = false; + + Aws::String m_vpcId; + bool m_vpcIdHasBeenSet = false; + + ProbeState m_state; + bool m_stateHasBeenSet = false; + + Aws::Utils::DateTime m_createdAt; + bool m_createdAtHasBeenSet = false; + + Aws::Utils::DateTime m_modifiedAt; + bool m_modifiedAtHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeInput.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeInput.h new file mode 100644 index 00000000000..df2d82673da --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeInput.h @@ -0,0 +1,318 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + + /** + *

Defines a probe when creating a probe or monitor.

See Also:

+ * AWS + * API Reference

+ */ + class ProbeInput + { + public: + AWS_NETWORKMONITOR_API ProbeInput(); + AWS_NETWORKMONITOR_API ProbeInput(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API ProbeInput& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_NETWORKMONITOR_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The ARN of the subnet.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The ARN of the subnet.

+ */ + inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArnHasBeenSet = true; m_sourceArn = value; } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArnHasBeenSet = true; m_sourceArn = std::move(value); } + + /** + *

The ARN of the subnet.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArnHasBeenSet = true; m_sourceArn.assign(value); } + + /** + *

The ARN of the subnet.

+ */ + inline ProbeInput& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The ARN of the subnet.

+ */ + inline ProbeInput& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the subnet.

+ */ + inline ProbeInput& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline ProbeInput& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline ProbeInput& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The destination IP address. This will be either IPV4 or + * IPV6.

+ */ + inline ProbeInput& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline bool DestinationPortHasBeenSet() const { return m_destinationPortHasBeenSet; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPortHasBeenSet = true; m_destinationPort = value; } + + /** + *

The port associated with the destination. This is required only + * if the protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline ProbeInput& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline ProbeInput& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The protocol used for the network traffic between the source and + * destination. This will be either TCP or + * ICMP.

+ */ + inline ProbeInput& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline bool PacketSizeHasBeenSet() const { return m_packetSizeHasBeenSet; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline void SetPacketSize(int value) { m_packetSizeHasBeenSet = true; m_packetSize = value; } + + /** + *

The size of the packets sent between the source and destination. This will be + * a number between 56 and 8500.

+ */ + inline ProbeInput& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs created and assigned to the monitor.

+ */ + inline ProbeInput& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_sourceArn; + bool m_sourceArnHasBeenSet = false; + + Aws::String m_destination; + bool m_destinationHasBeenSet = false; + + int m_destinationPort; + bool m_destinationPortHasBeenSet = false; + + Protocol m_protocol; + bool m_protocolHasBeenSet = false; + + int m_packetSize; + bool m_packetSizeHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeState.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeState.h new file mode 100644 index 00000000000..5d06d145d30 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/ProbeState.h @@ -0,0 +1,35 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + enum class ProbeState + { + NOT_SET, + PENDING, + ACTIVE, + INACTIVE, + ERROR_, + DELETING, + DELETED + }; + +namespace ProbeStateMapper +{ +AWS_NETWORKMONITOR_API ProbeState GetProbeStateForName(const Aws::String& name); + +AWS_NETWORKMONITOR_API Aws::String GetNameForProbeState(ProbeState value); +} // namespace ProbeStateMapper +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Protocol.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Protocol.h new file mode 100644 index 00000000000..e919cfcb146 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/Protocol.h @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + enum class Protocol + { + NOT_SET, + TCP, + ICMP + }; + +namespace ProtocolMapper +{ +AWS_NETWORKMONITOR_API Protocol GetProtocolForName(const Aws::String& name); + +AWS_NETWORKMONITOR_API Aws::String GetNameForProtocol(Protocol value); +} // namespace ProtocolMapper +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceRequest.h new file mode 100644 index 00000000000..917186e1c66 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceRequest.h @@ -0,0 +1,153 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class TagResourceRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API TagResourceRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "TagResource"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline TagResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline TagResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the monitor or probe to tag.

+ */ + inline TagResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} + + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs assigned to the monitor or probe.

+ */ + inline TagResourceRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } + + private: + + Aws::String m_resourceArn; + bool m_resourceArnHasBeenSet = false; + + Aws::Map m_tags; + bool m_tagsHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceResult.h new file mode 100644 index 00000000000..34875fc869f --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/TagResourceResult.h @@ -0,0 +1,63 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class TagResourceResult + { + public: + AWS_NETWORKMONITOR_API TagResourceResult(); + AWS_NETWORKMONITOR_API TagResourceResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API TagResourceResult& operator=(const Aws::AmazonWebServiceResult& result); + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline TagResourceResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline TagResourceResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline TagResourceResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceRequest.h new file mode 100644 index 00000000000..cdbc71e5eaa --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceRequest.h @@ -0,0 +1,139 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class UntagResourceRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API UntagResourceRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "UntagResource"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + AWS_NETWORKMONITOR_API void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline UntagResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline UntagResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} + + /** + *

The ARN of the monitor or probe that the tag should be removed from.

+ */ + inline UntagResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} + + + /** + *

The key-value pa

+ */ + inline const Aws::Vector& GetTagKeys() const{ return m_tagKeys; } + + /** + *

The key-value pa

+ */ + inline bool TagKeysHasBeenSet() const { return m_tagKeysHasBeenSet; } + + /** + *

The key-value pa

+ */ + inline void SetTagKeys(const Aws::Vector& value) { m_tagKeysHasBeenSet = true; m_tagKeys = value; } + + /** + *

The key-value pa

+ */ + inline void SetTagKeys(Aws::Vector&& value) { m_tagKeysHasBeenSet = true; m_tagKeys = std::move(value); } + + /** + *

The key-value pa

+ */ + inline UntagResourceRequest& WithTagKeys(const Aws::Vector& value) { SetTagKeys(value); return *this;} + + /** + *

The key-value pa

+ */ + inline UntagResourceRequest& WithTagKeys(Aws::Vector&& value) { SetTagKeys(std::move(value)); return *this;} + + /** + *

The key-value pa

+ */ + inline UntagResourceRequest& AddTagKeys(const Aws::String& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } + + /** + *

The key-value pa

+ */ + inline UntagResourceRequest& AddTagKeys(Aws::String&& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(std::move(value)); return *this; } + + /** + *

The key-value pa

+ */ + inline UntagResourceRequest& AddTagKeys(const char* value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } + + private: + + Aws::String m_resourceArn; + bool m_resourceArnHasBeenSet = false; + + Aws::Vector m_tagKeys; + bool m_tagKeysHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceResult.h new file mode 100644 index 00000000000..d3181768608 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UntagResourceResult.h @@ -0,0 +1,63 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class UntagResourceResult + { + public: + AWS_NETWORKMONITOR_API UntagResourceResult(); + AWS_NETWORKMONITOR_API UntagResourceResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API UntagResourceResult& operator=(const Aws::AmazonWebServiceResult& result); + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline UntagResourceResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline UntagResourceResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline UntagResourceResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorRequest.h new file mode 100644 index 00000000000..27439d4c3f6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorRequest.h @@ -0,0 +1,119 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class UpdateMonitorRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API UpdateMonitorRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "UpdateMonitor"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline UpdateMonitorRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline UpdateMonitorRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor to update. Run ListMonitors to get a + * list of monitor names.

+ */ + inline UpdateMonitorRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The aggregation time, in seconds, to change to. This must be either + * 30 or 60.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The aggregation time, in seconds, to change to. This must be either + * 30 or 60.

+ */ + inline bool AggregationPeriodHasBeenSet() const { return m_aggregationPeriodHasBeenSet; } + + /** + *

The aggregation time, in seconds, to change to. This must be either + * 30 or 60.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriodHasBeenSet = true; m_aggregationPeriod = value; } + + /** + *

The aggregation time, in seconds, to change to. This must be either + * 30 or 60.

+ */ + inline UpdateMonitorRequest& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + long long m_aggregationPeriod; + bool m_aggregationPeriodHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorResult.h new file mode 100644 index 00000000000..7c9ce5b4dc4 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateMonitorResult.h @@ -0,0 +1,250 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class UpdateMonitorResult + { + public: + AWS_NETWORKMONITOR_API UpdateMonitorResult(); + AWS_NETWORKMONITOR_API UpdateMonitorResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API UpdateMonitorResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The ARN of the monitor that was updated.

+ */ + inline const Aws::String& GetMonitorArn() const{ return m_monitorArn; } + + /** + *

The ARN of the monitor that was updated.

+ */ + inline void SetMonitorArn(const Aws::String& value) { m_monitorArn = value; } + + /** + *

The ARN of the monitor that was updated.

+ */ + inline void SetMonitorArn(Aws::String&& value) { m_monitorArn = std::move(value); } + + /** + *

The ARN of the monitor that was updated.

+ */ + inline void SetMonitorArn(const char* value) { m_monitorArn.assign(value); } + + /** + *

The ARN of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorArn(const Aws::String& value) { SetMonitorArn(value); return *this;} + + /** + *

The ARN of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorArn(Aws::String&& value) { SetMonitorArn(std::move(value)); return *this;} + + /** + *

The ARN of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorArn(const char* value) { SetMonitorArn(value); return *this;} + + + /** + *

The name of the monitor that was updated.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor that was updated.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorName = value; } + + /** + *

The name of the monitor that was updated.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorName = std::move(value); } + + /** + *

The name of the monitor that was updated.

+ */ + inline void SetMonitorName(const char* value) { m_monitorName.assign(value); } + + /** + *

The name of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor that was updated.

+ */ + inline UpdateMonitorResult& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

The state of the updated monitor.

+ */ + inline const MonitorState& GetState() const{ return m_state; } + + /** + *

The state of the updated monitor.

+ */ + inline void SetState(const MonitorState& value) { m_state = value; } + + /** + *

The state of the updated monitor.

+ */ + inline void SetState(MonitorState&& value) { m_state = std::move(value); } + + /** + *

The state of the updated monitor.

+ */ + inline UpdateMonitorResult& WithState(const MonitorState& value) { SetState(value); return *this;} + + /** + *

The state of the updated monitor.

+ */ + inline UpdateMonitorResult& WithState(MonitorState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The changed aggregation period.

+ */ + inline long long GetAggregationPeriod() const{ return m_aggregationPeriod; } + + /** + *

The changed aggregation period.

+ */ + inline void SetAggregationPeriod(long long value) { m_aggregationPeriod = value; } + + /** + *

The changed aggregation period.

+ */ + inline UpdateMonitorResult& WithAggregationPeriod(long long value) { SetAggregationPeriod(value); return *this;} + + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

The list of key-value pairs associated with the monitor.

+ */ + inline UpdateMonitorResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline UpdateMonitorResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline UpdateMonitorResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline UpdateMonitorResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_monitorArn; + + Aws::String m_monitorName; + + MonitorState m_state; + + long long m_aggregationPeriod; + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeRequest.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeRequest.h new file mode 100644 index 00000000000..e5e261e87d1 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeRequest.h @@ -0,0 +1,325 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + + /** + */ + class UpdateProbeRequest : public NetworkMonitorRequest + { + public: + AWS_NETWORKMONITOR_API UpdateProbeRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "UpdateProbe"; } + + AWS_NETWORKMONITOR_API Aws::String SerializePayload() const override; + + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline const Aws::String& GetMonitorName() const{ return m_monitorName; } + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline bool MonitorNameHasBeenSet() const { return m_monitorNameHasBeenSet; } + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline void SetMonitorName(const Aws::String& value) { m_monitorNameHasBeenSet = true; m_monitorName = value; } + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline void SetMonitorName(Aws::String&& value) { m_monitorNameHasBeenSet = true; m_monitorName = std::move(value); } + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline void SetMonitorName(const char* value) { m_monitorNameHasBeenSet = true; m_monitorName.assign(value); } + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline UpdateProbeRequest& WithMonitorName(const Aws::String& value) { SetMonitorName(value); return *this;} + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline UpdateProbeRequest& WithMonitorName(Aws::String&& value) { SetMonitorName(std::move(value)); return *this;} + + /** + *

The name of the monitor that the probe was updated for.

+ */ + inline UpdateProbeRequest& WithMonitorName(const char* value) { SetMonitorName(value); return *this;} + + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline bool ProbeIdHasBeenSet() const { return m_probeIdHasBeenSet; } + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeIdHasBeenSet = true; m_probeId = value; } + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeIdHasBeenSet = true; m_probeId = std::move(value); } + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline void SetProbeId(const char* value) { m_probeIdHasBeenSet = true; m_probeId.assign(value); } + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline UpdateProbeRequest& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline UpdateProbeRequest& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

Run GetMonitor to get a list of probes and probe IDs.

+ */ + inline UpdateProbeRequest& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + + /** + *

The state of the probe update.

+ */ + inline const ProbeState& GetState() const{ return m_state; } + + /** + *

The state of the probe update.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The state of the probe update.

+ */ + inline void SetState(const ProbeState& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The state of the probe update.

+ */ + inline void SetState(ProbeState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The state of the probe update.

+ */ + inline UpdateProbeRequest& WithState(const ProbeState& value) { SetState(value); return *this;} + + /** + *

The state of the probe update.

+ */ + inline UpdateProbeRequest& WithState(ProbeState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline UpdateProbeRequest& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline UpdateProbeRequest& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The updated IP address for the probe destination. This must be either an IPv4 + * or IPv6 address.

+ */ + inline UpdateProbeRequest& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The updated port for the probe destination. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The updated port for the probe destination. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline bool DestinationPortHasBeenSet() const { return m_destinationPortHasBeenSet; } + + /** + *

The updated port for the probe destination. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPortHasBeenSet = true; m_destinationPort = value; } + + /** + *

The updated port for the probe destination. This is required only if the + * protocol is TCP and must be a number between + * 1 and 65536.

+ */ + inline UpdateProbeRequest& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline UpdateProbeRequest& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The updated network protocol for the destination. This can be either + * TCP or ICMP. If the protocol is TCP, then + * port is also required.

+ */ + inline UpdateProbeRequest& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

he updated packets size for network traffic between the source and + * destination. This must be a number between 56 and + * 8500.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

he updated packets size for network traffic between the source and + * destination. This must be a number between 56 and + * 8500.

+ */ + inline bool PacketSizeHasBeenSet() const { return m_packetSizeHasBeenSet; } + + /** + *

he updated packets size for network traffic between the source and + * destination. This must be a number between 56 and + * 8500.

+ */ + inline void SetPacketSize(int value) { m_packetSizeHasBeenSet = true; m_packetSize = value; } + + /** + *

he updated packets size for network traffic between the source and + * destination. This must be a number between 56 and + * 8500.

+ */ + inline UpdateProbeRequest& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + private: + + Aws::String m_monitorName; + bool m_monitorNameHasBeenSet = false; + + Aws::String m_probeId; + bool m_probeIdHasBeenSet = false; + + ProbeState m_state; + bool m_stateHasBeenSet = false; + + Aws::String m_destination; + bool m_destinationHasBeenSet = false; + + int m_destinationPort; + bool m_destinationPortHasBeenSet = false; + + Protocol m_protocol; + bool m_protocolHasBeenSet = false; + + int m_packetSize; + bool m_packetSizeHasBeenSet = false; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeResult.h b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeResult.h new file mode 100644 index 00000000000..c84c6356b87 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/include/aws/networkmonitor/model/UpdateProbeResult.h @@ -0,0 +1,505 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace NetworkMonitor +{ +namespace Model +{ + class UpdateProbeResult + { + public: + AWS_NETWORKMONITOR_API UpdateProbeResult(); + AWS_NETWORKMONITOR_API UpdateProbeResult(const Aws::AmazonWebServiceResult& result); + AWS_NETWORKMONITOR_API UpdateProbeResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The updated ID of the probe.

+ */ + inline const Aws::String& GetProbeId() const{ return m_probeId; } + + /** + *

The updated ID of the probe.

+ */ + inline void SetProbeId(const Aws::String& value) { m_probeId = value; } + + /** + *

The updated ID of the probe.

+ */ + inline void SetProbeId(Aws::String&& value) { m_probeId = std::move(value); } + + /** + *

The updated ID of the probe.

+ */ + inline void SetProbeId(const char* value) { m_probeId.assign(value); } + + /** + *

The updated ID of the probe.

+ */ + inline UpdateProbeResult& WithProbeId(const Aws::String& value) { SetProbeId(value); return *this;} + + /** + *

The updated ID of the probe.

+ */ + inline UpdateProbeResult& WithProbeId(Aws::String&& value) { SetProbeId(std::move(value)); return *this;} + + /** + *

The updated ID of the probe.

+ */ + inline UpdateProbeResult& WithProbeId(const char* value) { SetProbeId(value); return *this;} + + + /** + *

The updated ARN of the probe.

+ */ + inline const Aws::String& GetProbeArn() const{ return m_probeArn; } + + /** + *

The updated ARN of the probe.

+ */ + inline void SetProbeArn(const Aws::String& value) { m_probeArn = value; } + + /** + *

The updated ARN of the probe.

+ */ + inline void SetProbeArn(Aws::String&& value) { m_probeArn = std::move(value); } + + /** + *

The updated ARN of the probe.

+ */ + inline void SetProbeArn(const char* value) { m_probeArn.assign(value); } + + /** + *

The updated ARN of the probe.

+ */ + inline UpdateProbeResult& WithProbeArn(const Aws::String& value) { SetProbeArn(value); return *this;} + + /** + *

The updated ARN of the probe.

+ */ + inline UpdateProbeResult& WithProbeArn(Aws::String&& value) { SetProbeArn(std::move(value)); return *this;} + + /** + *

The updated ARN of the probe.

+ */ + inline UpdateProbeResult& WithProbeArn(const char* value) { SetProbeArn(value); return *this;} + + + /** + *

The updated ARN of the source subnet.

+ */ + inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } + + /** + *

The updated ARN of the source subnet.

+ */ + inline void SetSourceArn(const Aws::String& value) { m_sourceArn = value; } + + /** + *

The updated ARN of the source subnet.

+ */ + inline void SetSourceArn(Aws::String&& value) { m_sourceArn = std::move(value); } + + /** + *

The updated ARN of the source subnet.

+ */ + inline void SetSourceArn(const char* value) { m_sourceArn.assign(value); } + + /** + *

The updated ARN of the source subnet.

+ */ + inline UpdateProbeResult& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} + + /** + *

The updated ARN of the source subnet.

+ */ + inline UpdateProbeResult& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} + + /** + *

The updated ARN of the source subnet.

+ */ + inline UpdateProbeResult& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} + + + /** + *

The updated destination IP address for the probe.

+ */ + inline const Aws::String& GetDestination() const{ return m_destination; } + + /** + *

The updated destination IP address for the probe.

+ */ + inline void SetDestination(const Aws::String& value) { m_destination = value; } + + /** + *

The updated destination IP address for the probe.

+ */ + inline void SetDestination(Aws::String&& value) { m_destination = std::move(value); } + + /** + *

The updated destination IP address for the probe.

+ */ + inline void SetDestination(const char* value) { m_destination.assign(value); } + + /** + *

The updated destination IP address for the probe.

+ */ + inline UpdateProbeResult& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} + + /** + *

The updated destination IP address for the probe.

+ */ + inline UpdateProbeResult& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} + + /** + *

The updated destination IP address for the probe.

+ */ + inline UpdateProbeResult& WithDestination(const char* value) { SetDestination(value); return *this;} + + + /** + *

The updated destination port. This will be a number between 1 + * and 65536.

+ */ + inline int GetDestinationPort() const{ return m_destinationPort; } + + /** + *

The updated destination port. This will be a number between 1 + * and 65536.

+ */ + inline void SetDestinationPort(int value) { m_destinationPort = value; } + + /** + *

The updated destination port. This will be a number between 1 + * and 65536.

+ */ + inline UpdateProbeResult& WithDestinationPort(int value) { SetDestinationPort(value); return *this;} + + + /** + *

The updated protocol for the probe.

+ */ + inline const Protocol& GetProtocol() const{ return m_protocol; } + + /** + *

The updated protocol for the probe.

+ */ + inline void SetProtocol(const Protocol& value) { m_protocol = value; } + + /** + *

The updated protocol for the probe.

+ */ + inline void SetProtocol(Protocol&& value) { m_protocol = std::move(value); } + + /** + *

The updated protocol for the probe.

+ */ + inline UpdateProbeResult& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} + + /** + *

The updated protocol for the probe.

+ */ + inline UpdateProbeResult& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} + + + /** + *

The updated packet size for the probe.

+ */ + inline int GetPacketSize() const{ return m_packetSize; } + + /** + *

The updated packet size for the probe.

+ */ + inline void SetPacketSize(int value) { m_packetSize = value; } + + /** + *

The updated packet size for the probe.

+ */ + inline UpdateProbeResult& WithPacketSize(int value) { SetPacketSize(value); return *this;} + + + /** + *

The updated IP address family. This will be either IPV4 or + * IPV6.

+ */ + inline const AddressFamily& GetAddressFamily() const{ return m_addressFamily; } + + /** + *

The updated IP address family. This will be either IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(const AddressFamily& value) { m_addressFamily = value; } + + /** + *

The updated IP address family. This will be either IPV4 or + * IPV6.

+ */ + inline void SetAddressFamily(AddressFamily&& value) { m_addressFamily = std::move(value); } + + /** + *

The updated IP address family. This will be either IPV4 or + * IPV6.

+ */ + inline UpdateProbeResult& WithAddressFamily(const AddressFamily& value) { SetAddressFamily(value); return *this;} + + /** + *

The updated IP address family. This will be either IPV4 or + * IPV6.

+ */ + inline UpdateProbeResult& WithAddressFamily(AddressFamily&& value) { SetAddressFamily(std::move(value)); return *this;} + + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline const Aws::String& GetVpcId() const{ return m_vpcId; } + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline void SetVpcId(const Aws::String& value) { m_vpcId = value; } + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline void SetVpcId(Aws::String&& value) { m_vpcId = std::move(value); } + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline void SetVpcId(const char* value) { m_vpcId.assign(value); } + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline UpdateProbeResult& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline UpdateProbeResult& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} + + /** + *

The updated ID of the source VPC subnet ID.

+ */ + inline UpdateProbeResult& WithVpcId(const char* value) { SetVpcId(value); return *this;} + + + /** + *

The state of the updated probe.

+ */ + inline const ProbeState& GetState() const{ return m_state; } + + /** + *

The state of the updated probe.

+ */ + inline void SetState(const ProbeState& value) { m_state = value; } + + /** + *

The state of the updated probe.

+ */ + inline void SetState(ProbeState&& value) { m_state = std::move(value); } + + /** + *

The state of the updated probe.

+ */ + inline UpdateProbeResult& WithState(const ProbeState& value) { SetState(value); return *this;} + + /** + *

The state of the updated probe.

+ */ + inline UpdateProbeResult& WithState(ProbeState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } + + /** + *

The time and date that the probe was created.

+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } + + /** + *

The time and date that the probe was created.

+ */ + inline UpdateProbeResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *

The time and date that the probe was created.

+ */ + inline UpdateProbeResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *

The time and date that the probe was last updated.

+ */ + inline const Aws::Utils::DateTime& GetModifiedAt() const{ return m_modifiedAt; } + + /** + *

The time and date that the probe was last updated.

+ */ + inline void SetModifiedAt(const Aws::Utils::DateTime& value) { m_modifiedAt = value; } + + /** + *

The time and date that the probe was last updated.

+ */ + inline void SetModifiedAt(Aws::Utils::DateTime&& value) { m_modifiedAt = std::move(value); } + + /** + *

The time and date that the probe was last updated.

+ */ + inline UpdateProbeResult& WithModifiedAt(const Aws::Utils::DateTime& value) { SetModifiedAt(value); return *this;} + + /** + *

The time and date that the probe was last updated.

+ */ + inline UpdateProbeResult& WithModifiedAt(Aws::Utils::DateTime&& value) { SetModifiedAt(std::move(value)); return *this;} + + + /** + *

Update tags for a probe.

+ */ + inline const Aws::Map& GetTags() const{ return m_tags; } + + /** + *

Update tags for a probe.

+ */ + inline void SetTags(const Aws::Map& value) { m_tags = value; } + + /** + *

Update tags for a probe.

+ */ + inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } + + /** + *

Update tags for a probe.

+ */ + inline UpdateProbeResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline UpdateProbeResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline UpdateProbeResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline UpdateProbeResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::String m_probeId; + + Aws::String m_probeArn; + + Aws::String m_sourceArn; + + Aws::String m_destination; + + int m_destinationPort; + + Protocol m_protocol; + + int m_packetSize; + + AddressFamily m_addressFamily; + + Aws::String m_vpcId; + + ProbeState m_state; + + Aws::Utils::DateTime m_createdAt; + + Aws::Utils::DateTime m_modifiedAt; + + Aws::Map m_tags; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorClient.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorClient.cpp new file mode 100644 index 00000000000..c6c81745da9 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorClient.cpp @@ -0,0 +1,579 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + + +using namespace Aws; +using namespace Aws::Auth; +using namespace Aws::Client; +using namespace Aws::NetworkMonitor; +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Http; +using namespace Aws::Utils::Json; +using namespace smithy::components::tracing; +using ResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome; + +const char* NetworkMonitorClient::SERVICE_NAME = "networkmonitor"; +const char* NetworkMonitorClient::ALLOCATION_TAG = "NetworkMonitorClient"; + +NetworkMonitorClient::NetworkMonitorClient(const NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration, + std::shared_ptr endpointProvider) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + Aws::MakeShared(ALLOCATION_TAG), + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(std::move(endpointProvider)) +{ + init(m_clientConfiguration); +} + +NetworkMonitorClient::NetworkMonitorClient(const AWSCredentials& credentials, + std::shared_ptr endpointProvider, + const NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + Aws::MakeShared(ALLOCATION_TAG, credentials), + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(std::move(endpointProvider)) +{ + init(m_clientConfiguration); +} + +NetworkMonitorClient::NetworkMonitorClient(const std::shared_ptr& credentialsProvider, + std::shared_ptr endpointProvider, + const NetworkMonitor::NetworkMonitorClientConfiguration& clientConfiguration) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + credentialsProvider, + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(std::move(endpointProvider)) +{ + init(m_clientConfiguration); +} + + /* Legacy constructors due deprecation */ + NetworkMonitorClient::NetworkMonitorClient(const Client::ClientConfiguration& clientConfiguration) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + Aws::MakeShared(ALLOCATION_TAG), + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) +{ + init(m_clientConfiguration); +} + +NetworkMonitorClient::NetworkMonitorClient(const AWSCredentials& credentials, + const Client::ClientConfiguration& clientConfiguration) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + Aws::MakeShared(ALLOCATION_TAG, credentials), + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) +{ + init(m_clientConfiguration); +} + +NetworkMonitorClient::NetworkMonitorClient(const std::shared_ptr& credentialsProvider, + const Client::ClientConfiguration& clientConfiguration) : + BASECLASS(clientConfiguration, + Aws::MakeShared(ALLOCATION_TAG, + credentialsProvider, + SERVICE_NAME, + Aws::Region::ComputeSignerRegion(clientConfiguration.region)), + Aws::MakeShared(ALLOCATION_TAG)), + m_clientConfiguration(clientConfiguration), + m_executor(clientConfiguration.executor), + m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) +{ + init(m_clientConfiguration); +} + + /* End of legacy constructors due deprecation */ +NetworkMonitorClient::~NetworkMonitorClient() +{ + ShutdownSdkClient(this, -1); +} + +std::shared_ptr& NetworkMonitorClient::accessEndpointProvider() +{ + return m_endpointProvider; +} + +void NetworkMonitorClient::init(const NetworkMonitor::NetworkMonitorClientConfiguration& config) +{ + AWSClient::SetServiceClientName("NetworkMonitor"); + AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider); + m_endpointProvider->InitBuiltInParameters(config); +} + +void NetworkMonitorClient::OverrideEndpoint(const Aws::String& endpoint) +{ + AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider); + m_endpointProvider->OverrideEndpoint(endpoint); +} + +CreateMonitorOutcome NetworkMonitorClient::CreateMonitor(const CreateMonitorRequest& request) const +{ + AWS_OPERATION_GUARD(CreateMonitor); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, CreateMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, CreateMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, CreateMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".CreateMonitor", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> CreateMonitorOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CreateMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors"); + return CreateMonitorOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +CreateProbeOutcome NetworkMonitorClient::CreateProbe(const CreateProbeRequest& request) const +{ + AWS_OPERATION_GUARD(CreateProbe); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, CreateProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("CreateProbe", "Required field: MonitorName, is not set"); + return CreateProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, CreateProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, CreateProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".CreateProbe", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> CreateProbeOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CreateProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + endpointResolutionOutcome.GetResult().AddPathSegments("/probes"); + return CreateProbeOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +DeleteMonitorOutcome NetworkMonitorClient::DeleteMonitor(const DeleteMonitorRequest& request) const +{ + AWS_OPERATION_GUARD(DeleteMonitor); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DeleteMonitor", "Required field: MonitorName, is not set"); + return DeleteMonitorOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, DeleteMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, DeleteMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".DeleteMonitor", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> DeleteMonitorOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + return DeleteMonitorOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +DeleteProbeOutcome NetworkMonitorClient::DeleteProbe(const DeleteProbeRequest& request) const +{ + AWS_OPERATION_GUARD(DeleteProbe); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DeleteProbe", "Required field: MonitorName, is not set"); + return DeleteProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + if (!request.ProbeIdHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DeleteProbe", "Required field: ProbeId, is not set"); + return DeleteProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ProbeId]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, DeleteProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, DeleteProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".DeleteProbe", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> DeleteProbeOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + endpointResolutionOutcome.GetResult().AddPathSegments("/probes/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetProbeId()); + return DeleteProbeOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +GetMonitorOutcome NetworkMonitorClient::GetMonitor(const GetMonitorRequest& request) const +{ + AWS_OPERATION_GUARD(GetMonitor); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("GetMonitor", "Required field: MonitorName, is not set"); + return GetMonitorOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, GetMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, GetMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".GetMonitor", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> GetMonitorOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + return GetMonitorOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +GetProbeOutcome NetworkMonitorClient::GetProbe(const GetProbeRequest& request) const +{ + AWS_OPERATION_GUARD(GetProbe); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("GetProbe", "Required field: MonitorName, is not set"); + return GetProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + if (!request.ProbeIdHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("GetProbe", "Required field: ProbeId, is not set"); + return GetProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ProbeId]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, GetProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, GetProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".GetProbe", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> GetProbeOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + endpointResolutionOutcome.GetResult().AddPathSegments("/probes/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetProbeId()); + return GetProbeOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +ListMonitorsOutcome NetworkMonitorClient::ListMonitors(const ListMonitorsRequest& request) const +{ + AWS_OPERATION_GUARD(ListMonitors); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListMonitors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, ListMonitors, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, ListMonitors, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".ListMonitors", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> ListMonitorsOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListMonitors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors"); + return ListMonitorsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +ListTagsForResourceOutcome NetworkMonitorClient::ListTagsForResource(const ListTagsForResourceRequest& request) const +{ + AWS_OPERATION_GUARD(ListTagsForResource); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListTagsForResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.ResourceArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("ListTagsForResource", "Required field: ResourceArn, is not set"); + return ListTagsForResourceOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, ListTagsForResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, ListTagsForResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".ListTagsForResource", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> ListTagsForResourceOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListTagsForResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/tags/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetResourceArn()); + return ListTagsForResourceOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +TagResourceOutcome NetworkMonitorClient::TagResource(const TagResourceRequest& request) const +{ + AWS_OPERATION_GUARD(TagResource); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, TagResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.ResourceArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("TagResource", "Required field: ResourceArn, is not set"); + return TagResourceOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, TagResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, TagResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".TagResource", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> TagResourceOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, TagResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/tags/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetResourceArn()); + return TagResourceOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +UntagResourceOutcome NetworkMonitorClient::UntagResource(const UntagResourceRequest& request) const +{ + AWS_OPERATION_GUARD(UntagResource); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, UntagResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.ResourceArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("UntagResource", "Required field: ResourceArn, is not set"); + return UntagResourceOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ResourceArn]", false)); + } + if (!request.TagKeysHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("UntagResource", "Required field: TagKeys, is not set"); + return UntagResourceOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [TagKeys]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, UntagResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, UntagResource, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".UntagResource", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> UntagResourceOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, UntagResource, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/tags/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetResourceArn()); + return UntagResourceOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +UpdateMonitorOutcome NetworkMonitorClient::UpdateMonitor(const UpdateMonitorRequest& request) const +{ + AWS_OPERATION_GUARD(UpdateMonitor); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, UpdateMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("UpdateMonitor", "Required field: MonitorName, is not set"); + return UpdateMonitorOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, UpdateMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, UpdateMonitor, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".UpdateMonitor", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> UpdateMonitorOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, UpdateMonitor, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + return UpdateMonitorOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PATCH, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + +UpdateProbeOutcome NetworkMonitorClient::UpdateProbe(const UpdateProbeRequest& request) const +{ + AWS_OPERATION_GUARD(UpdateProbe); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, UpdateProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + if (!request.MonitorNameHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("UpdateProbe", "Required field: MonitorName, is not set"); + return UpdateProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [MonitorName]", false)); + } + if (!request.ProbeIdHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("UpdateProbe", "Required field: ProbeId, is not set"); + return UpdateProbeOutcome(Aws::Client::AWSError(NetworkMonitorErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ProbeId]", false)); + } + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, UpdateProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, UpdateProbe, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".UpdateProbe", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> UpdateProbeOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, UpdateProbe, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + endpointResolutionOutcome.GetResult().AddPathSegments("/monitors/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetMonitorName()); + endpointResolutionOutcome.GetResult().AddPathSegments("/probes/"); + endpointResolutionOutcome.GetResult().AddPathSegment(request.GetProbeId()); + return UpdateProbeOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PATCH, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointProvider.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointProvider.cpp new file mode 100644 index 00000000000..13f7ca3127f --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointProvider.cpp @@ -0,0 +1,16 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Endpoint +{ +} // namespace Endpoint +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointRules.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointRules.cpp new file mode 100644 index 00000000000..999bffa5c0a --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorEndpointRules.cpp @@ -0,0 +1,177 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +const size_t NetworkMonitorEndpointRules::RulesBlobStrLen = 3756; +const size_t NetworkMonitorEndpointRules::RulesBlobSize = 3757; + +using RulesBlobT = Aws::Array; +static constexpr RulesBlobT RulesBlob = {{ +'{','"','v','e','r','s','i','o','n','"',':','"','1','.','0','"',',','"','p','a','r','a','m','e','t', +'e','r','s','"',':','{','"','R','e','g','i','o','n','"',':','{','"','b','u','i','l','t','I','n','"', +':','"','A','W','S',':',':','R','e','g','i','o','n','"',',','"','r','e','q','u','i','r','e','d','"', +':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','T', +'h','e',' ','A','W','S',' ','r','e','g','i','o','n',' ','u','s','e','d',' ','t','o',' ','d','i','s', +'p','a','t','c','h',' ','t','h','e',' ','r','e','q','u','e','s','t','.','"',',','"','t','y','p','e', +'"',':','"','S','t','r','i','n','g','"','}',',','"','U','s','e','D','u','a','l','S','t','a','c','k', +'"',':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','U','s','e','D','u','a', +'l','S','t','a','c','k','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"', +'d','e','f','a','u','l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a', +'t','i','o','n','"',':','"','W','h','e','n',' ','t','r','u','e',',',' ','u','s','e',' ','t','h','e', +' ','d','u','a','l','-','s','t','a','c','k',' ','e','n','d','p','o','i','n','t','.',' ','I','f',' ', +'t','h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p','o','i','n','t',' ','d', +'o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','d','u','a','l','-','s','t','a','c', +'k',',',' ','d','i','s','p','a','t','c','h','i','n','g',' ','t','h','e',' ','r','e','q','u','e','s', +'t',' ','M','A','Y',' ','r','e','t','u','r','n',' ','a','n',' ','e','r','r','o','r','.','"',',','"', +'t','y','p','e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','U','s','e','F','I','P','S', +'"',':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','U','s','e','F','I','P', +'S','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d','e','f','a','u', +'l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"', +':','"','W','h','e','n',' ','t','r','u','e',',',' ','s','e','n','d',' ','t','h','i','s',' ','r','e', +'q','u','e','s','t',' ','t','o',' ','t','h','e',' ','F','I','P','S','-','c','o','m','p','l','i','a', +'n','t',' ','r','e','g','i','o','n','a','l',' ','e','n','d','p','o','i','n','t','.',' ','I','f',' ', +'t','h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p','o','i','n','t',' ','d', +'o','e','s',' ','n','o','t',' ','h','a','v','e',' ','a',' ','F','I','P','S',' ','c','o','m','p','l', +'i','a','n','t',' ','e','n','d','p','o','i','n','t',',',' ','d','i','s','p','a','t','c','h','i','n', +'g',' ','t','h','e',' ','r','e','q','u','e','s','t',' ','w','i','l','l',' ','r','e','t','u','r','n', +' ','a','n',' ','e','r','r','o','r','.','"',',','"','t','y','p','e','"',':','"','B','o','o','l','e', +'a','n','"','}',',','"','E','n','d','p','o','i','n','t','"',':','{','"','b','u','i','l','t','I','n', +'"',':','"','S','D','K',':',':','E','n','d','p','o','i','n','t','"',',','"','r','e','q','u','i','r', +'e','d','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"', +':','"','O','v','e','r','r','i','d','e',' ','t','h','e',' ','e','n','d','p','o','i','n','t',' ','u', +'s','e','d',' ','t','o',' ','s','e','n','d',' ','t','h','i','s',' ','r','e','q','u','e','s','t','"', +',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}','}',',','"','r','u','l','e','s', +'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"', +'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n', +'d','p','o','i','n','t','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o', +'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n', +'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U', +'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':', +'"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','F', +'I','P','S',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a', +'r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':', +'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']', +',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[', +'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r', +'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k', +'"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l', +'i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','D','u','a','l','s','t','a', +'c','k',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r', +'e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':','"', +'e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',', +'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','{','"','r','e','f','"',':', +'"','E','n','d','p','o','i','n','t','"','}',',','"','p','r','o','p','e','r','t','i','e','s','"',':', +'{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"', +'e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"', +'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i', +'t','i','o','n','s','"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d', +'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a', +'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']','}',']', +',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[', +'{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r', +'g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a', +'s','s','i','g','n','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}', +']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':', +'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a', +'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t', +'r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l', +'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a', +'l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':', +'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o', +'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u','e', +',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[', +'{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}', +',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']','}',',','{','"','f','n','"', +':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[', +'t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g', +'v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u', +'l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']', +'}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n', +'s','"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o', +'n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':', +'"','h','t','t','p','s',':','/','/','n','e','t','w','o','r','k','m','o','n','i','t','o','r','-','f', +'i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e', +'s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x','}','"', +',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s', +'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']', +',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y','p','e','"',':','"', +'t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"', +'e','r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',' ','D','u','a','l','S','t','a','c', +'k',' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b','u','t',' ','t','h','i','s',' ','p', +'a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t', +' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t','y','p','e','"',':','"','e','r','r', +'o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o', +'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n', +'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U', +'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':', +'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o', +'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n', +'"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f', +'"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p', +'p','o','r','t','s','F','I','P','S','"',']','}',',','t','r','u','e',']','}',']',',','"','r','u','l', +'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','r','u', +'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e', +'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/', +'n','e','t','w','o','r','k','m','o','n','i','t','o','r','-','f','i','p','s','.','{','R','e','g','i', +'o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S', +'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"', +'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p', +'o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"', +'t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n', +'s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','i','s',' ','e','n', +'a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ', +'d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t', +'y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r', +'e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"', +':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[', +'{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r', +'u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o', +'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s', +'"',',','"','a','r','g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t', +'A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r', +'t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D', +'u','a','l','S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{', +'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','r','u','l','e','s','"',':','[', +'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n', +'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','n','e','t','w','o','r', +'k','m','o','n','i','t','o','r','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t', +'i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f', +'f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e', +'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i', +'n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y', +'p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', +':','[',']',',','"','e','r','r','o','r','"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s', +' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i', +'o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S', +'t','a','c','k','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t', +'y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s', +'"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n', +'s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"', +'h','t','t','p','s',':','/','/','n','e','t','w','o','r','k','m','o','n','i','t','o','r','.','{','R', +'e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d', +'n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{', +'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e', +'n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}', +']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y','p','e','"',':', +'"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',', +'"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r', +'a','t','i','o','n',':',' ','M','i','s','s','i','n','g',' ','R','e','g','i','o','n','"',',','"','t', +'y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r', +'e','e','"','}',']','}','\0' +}}; + +const char* NetworkMonitorEndpointRules::GetRulesBlob() +{ + return RulesBlob.data(); +} + +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrorMarshaller.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrorMarshaller.cpp new file mode 100644 index 00000000000..da66adaba31 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrorMarshaller.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include + +using namespace Aws::Client; +using namespace Aws::NetworkMonitor; + +AWSError NetworkMonitorErrorMarshaller::FindErrorByName(const char* errorName) const +{ + AWSError error = NetworkMonitorErrorMapper::GetErrorForName(errorName); + if(error.GetErrorType() != CoreErrors::UNKNOWN) + { + return error; + } + + return AWSErrorMarshaller::FindErrorByName(errorName); +} \ No newline at end of file diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrors.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrors.cpp new file mode 100644 index 00000000000..23abf9ca114 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorErrors.cpp @@ -0,0 +1,47 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include + +using namespace Aws::Client; +using namespace Aws::Utils; +using namespace Aws::NetworkMonitor; + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace NetworkMonitorErrorMapper +{ + +static const int CONFLICT_HASH = HashingUtils::HashString("ConflictException"); +static const int SERVICE_QUOTA_EXCEEDED_HASH = HashingUtils::HashString("ServiceQuotaExceededException"); +static const int INTERNAL_SERVER_HASH = HashingUtils::HashString("InternalServerException"); + + +AWSError GetErrorForName(const char* errorName) +{ + int hashCode = HashingUtils::HashString(errorName); + + if (hashCode == CONFLICT_HASH) + { + return AWSError(static_cast(NetworkMonitorErrors::CONFLICT), RetryableType::NOT_RETRYABLE); + } + else if (hashCode == SERVICE_QUOTA_EXCEEDED_HASH) + { + return AWSError(static_cast(NetworkMonitorErrors::SERVICE_QUOTA_EXCEEDED), RetryableType::NOT_RETRYABLE); + } + else if (hashCode == INTERNAL_SERVER_HASH) + { + return AWSError(static_cast(NetworkMonitorErrors::INTERNAL_SERVER), RetryableType::RETRYABLE); + } + return AWSError(CoreErrors::UNKNOWN, false); +} + +} // namespace NetworkMonitorErrorMapper +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorRequest.cpp new file mode 100644 index 00000000000..003801a8cf9 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/NetworkMonitorRequest.cpp @@ -0,0 +1,14 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + + +#include + +namespace Aws +{ +namespace NetworkMonitor +{ +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/AddressFamily.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/AddressFamily.cpp new file mode 100644 index 00000000000..98d70362b2c --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/AddressFamily.cpp @@ -0,0 +1,72 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace NetworkMonitor + { + namespace Model + { + namespace AddressFamilyMapper + { + + static const int IPV4_HASH = HashingUtils::HashString("IPV4"); + static const int IPV6_HASH = HashingUtils::HashString("IPV6"); + + + AddressFamily GetAddressFamilyForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == IPV4_HASH) + { + return AddressFamily::IPV4; + } + else if (hashCode == IPV6_HASH) + { + return AddressFamily::IPV6; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return AddressFamily::NOT_SET; + } + + Aws::String GetNameForAddressFamily(AddressFamily enumValue) + { + switch(enumValue) + { + case AddressFamily::NOT_SET: + return {}; + case AddressFamily::IPV4: + return "IPV4"; + case AddressFamily::IPV6: + return "IPV6"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace AddressFamilyMapper + } // namespace Model + } // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorProbeInput.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorProbeInput.cpp new file mode 100644 index 00000000000..656321df3f3 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorProbeInput.cpp @@ -0,0 +1,147 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + +CreateMonitorProbeInput::CreateMonitorProbeInput() : + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_probeTagsHasBeenSet(false) +{ +} + +CreateMonitorProbeInput::CreateMonitorProbeInput(JsonView jsonValue) : + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_probeTagsHasBeenSet(false) +{ + *this = jsonValue; +} + +CreateMonitorProbeInput& CreateMonitorProbeInput::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + m_sourceArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + m_destinationHasBeenSet = true; + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + m_destinationPortHasBeenSet = true; + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + m_protocolHasBeenSet = true; + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + m_packetSizeHasBeenSet = true; + } + + if(jsonValue.ValueExists("probeTags")) + { + Aws::Map probeTagsJsonMap = jsonValue.GetObject("probeTags").GetAllObjects(); + for(auto& probeTagsItem : probeTagsJsonMap) + { + m_probeTags[probeTagsItem.first] = probeTagsItem.second.AsString(); + } + m_probeTagsHasBeenSet = true; + } + + return *this; +} + +JsonValue CreateMonitorProbeInput::Jsonize() const +{ + JsonValue payload; + + if(m_sourceArnHasBeenSet) + { + payload.WithString("sourceArn", m_sourceArn); + + } + + if(m_destinationHasBeenSet) + { + payload.WithString("destination", m_destination); + + } + + if(m_destinationPortHasBeenSet) + { + payload.WithInteger("destinationPort", m_destinationPort); + + } + + if(m_protocolHasBeenSet) + { + payload.WithString("protocol", ProtocolMapper::GetNameForProtocol(m_protocol)); + } + + if(m_packetSizeHasBeenSet) + { + payload.WithInteger("packetSize", m_packetSize); + + } + + if(m_probeTagsHasBeenSet) + { + JsonValue probeTagsJsonMap; + for(auto& probeTagsItem : m_probeTags) + { + probeTagsJsonMap.WithString(probeTagsItem.first, probeTagsItem.second); + } + payload.WithObject("probeTags", std::move(probeTagsJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorRequest.cpp new file mode 100644 index 00000000000..da8c143c9b8 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorRequest.cpp @@ -0,0 +1,75 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +CreateMonitorRequest::CreateMonitorRequest() : + m_monitorNameHasBeenSet(false), + m_probesHasBeenSet(false), + m_aggregationPeriod(0), + m_aggregationPeriodHasBeenSet(false), + m_clientToken(Aws::Utils::UUID::PseudoRandomUUID()), + m_clientTokenHasBeenSet(true), + m_tagsHasBeenSet(false) +{ +} + +Aws::String CreateMonitorRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_monitorNameHasBeenSet) + { + payload.WithString("monitorName", m_monitorName); + + } + + if(m_probesHasBeenSet) + { + Aws::Utils::Array probesJsonList(m_probes.size()); + for(unsigned probesIndex = 0; probesIndex < probesJsonList.GetLength(); ++probesIndex) + { + probesJsonList[probesIndex].AsObject(m_probes[probesIndex].Jsonize()); + } + payload.WithArray("probes", std::move(probesJsonList)); + + } + + if(m_aggregationPeriodHasBeenSet) + { + payload.WithInt64("aggregationPeriod", m_aggregationPeriod); + + } + + if(m_clientTokenHasBeenSet) + { + payload.WithString("clientToken", m_clientToken); + + } + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorResult.cpp new file mode 100644 index 00000000000..541a23b9114 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateMonitorResult.cpp @@ -0,0 +1,79 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +CreateMonitorResult::CreateMonitorResult() : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ +} + +CreateMonitorResult::CreateMonitorResult(const Aws::AmazonWebServiceResult& result) : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ + *this = result; +} + +CreateMonitorResult& CreateMonitorResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("monitorArn")) + { + m_monitorArn = jsonValue.GetString("monitorArn"); + + } + + if(jsonValue.ValueExists("monitorName")) + { + m_monitorName = jsonValue.GetString("monitorName"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = MonitorStateMapper::GetMonitorStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("aggregationPeriod")) + { + m_aggregationPeriod = jsonValue.GetInt64("aggregationPeriod"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeRequest.cpp new file mode 100644 index 00000000000..e731f23bf4b --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeRequest.cpp @@ -0,0 +1,56 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +CreateProbeRequest::CreateProbeRequest() : + m_monitorNameHasBeenSet(false), + m_probeHasBeenSet(false), + m_clientToken(Aws::Utils::UUID::PseudoRandomUUID()), + m_clientTokenHasBeenSet(true), + m_tagsHasBeenSet(false) +{ +} + +Aws::String CreateProbeRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_probeHasBeenSet) + { + payload.WithObject("probe", m_probe.Jsonize()); + + } + + if(m_clientTokenHasBeenSet) + { + payload.WithString("clientToken", m_clientToken); + + } + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeResult.cpp new file mode 100644 index 00000000000..5886e42654b --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/CreateProbeResult.cpp @@ -0,0 +1,133 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +CreateProbeResult::CreateProbeResult() : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ +} + +CreateProbeResult::CreateProbeResult(const Aws::AmazonWebServiceResult& result) : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ + *this = result; +} + +CreateProbeResult& CreateProbeResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("probeId")) + { + m_probeId = jsonValue.GetString("probeId"); + + } + + if(jsonValue.ValueExists("probeArn")) + { + m_probeArn = jsonValue.GetString("probeArn"); + + } + + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + } + + if(jsonValue.ValueExists("addressFamily")) + { + m_addressFamily = AddressFamilyMapper::GetAddressFamilyForName(jsonValue.GetString("addressFamily")); + + } + + if(jsonValue.ValueExists("vpcId")) + { + m_vpcId = jsonValue.GetString("vpcId"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = ProbeStateMapper::GetProbeStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("createdAt")) + { + m_createdAt = jsonValue.GetDouble("createdAt"); + + } + + if(jsonValue.ValueExists("modifiedAt")) + { + m_modifiedAt = jsonValue.GetDouble("modifiedAt"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorRequest.cpp new file mode 100644 index 00000000000..c516fade2e7 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorRequest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +DeleteMonitorRequest::DeleteMonitorRequest() : + m_monitorNameHasBeenSet(false) +{ +} + +Aws::String DeleteMonitorRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorResult.cpp new file mode 100644 index 00000000000..cf5194a4940 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteMonitorResult.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +DeleteMonitorResult::DeleteMonitorResult() +{ +} + +DeleteMonitorResult::DeleteMonitorResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DeleteMonitorResult& DeleteMonitorResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + AWS_UNREFERENCED_PARAM(result); + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeRequest.cpp new file mode 100644 index 00000000000..e08a2f659f8 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeRequest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +DeleteProbeRequest::DeleteProbeRequest() : + m_monitorNameHasBeenSet(false), + m_probeIdHasBeenSet(false) +{ +} + +Aws::String DeleteProbeRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeResult.cpp new file mode 100644 index 00000000000..80aeefd5c37 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/DeleteProbeResult.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +DeleteProbeResult::DeleteProbeResult() +{ +} + +DeleteProbeResult::DeleteProbeResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DeleteProbeResult& DeleteProbeResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + AWS_UNREFERENCED_PARAM(result); + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorRequest.cpp new file mode 100644 index 00000000000..24e8e382dd3 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorRequest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +GetMonitorRequest::GetMonitorRequest() : + m_monitorNameHasBeenSet(false) +{ +} + +Aws::String GetMonitorRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorResult.cpp new file mode 100644 index 00000000000..d2284b9f57c --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetMonitorResult.cpp @@ -0,0 +1,100 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +GetMonitorResult::GetMonitorResult() : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ +} + +GetMonitorResult::GetMonitorResult(const Aws::AmazonWebServiceResult& result) : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ + *this = result; +} + +GetMonitorResult& GetMonitorResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("monitorArn")) + { + m_monitorArn = jsonValue.GetString("monitorArn"); + + } + + if(jsonValue.ValueExists("monitorName")) + { + m_monitorName = jsonValue.GetString("monitorName"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = MonitorStateMapper::GetMonitorStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("aggregationPeriod")) + { + m_aggregationPeriod = jsonValue.GetInt64("aggregationPeriod"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + if(jsonValue.ValueExists("probes")) + { + Aws::Utils::Array probesJsonList = jsonValue.GetArray("probes"); + for(unsigned probesIndex = 0; probesIndex < probesJsonList.GetLength(); ++probesIndex) + { + m_probes.push_back(probesJsonList[probesIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("createdAt")) + { + m_createdAt = jsonValue.GetDouble("createdAt"); + + } + + if(jsonValue.ValueExists("modifiedAt")) + { + m_modifiedAt = jsonValue.GetDouble("modifiedAt"); + + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeRequest.cpp new file mode 100644 index 00000000000..ce8fcd27b5f --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeRequest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +GetProbeRequest::GetProbeRequest() : + m_monitorNameHasBeenSet(false), + m_probeIdHasBeenSet(false) +{ +} + +Aws::String GetProbeRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeResult.cpp new file mode 100644 index 00000000000..57b47330b53 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/GetProbeResult.cpp @@ -0,0 +1,133 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +GetProbeResult::GetProbeResult() : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ +} + +GetProbeResult::GetProbeResult(const Aws::AmazonWebServiceResult& result) : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ + *this = result; +} + +GetProbeResult& GetProbeResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("probeId")) + { + m_probeId = jsonValue.GetString("probeId"); + + } + + if(jsonValue.ValueExists("probeArn")) + { + m_probeArn = jsonValue.GetString("probeArn"); + + } + + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + } + + if(jsonValue.ValueExists("addressFamily")) + { + m_addressFamily = AddressFamilyMapper::GetAddressFamilyForName(jsonValue.GetString("addressFamily")); + + } + + if(jsonValue.ValueExists("vpcId")) + { + m_vpcId = jsonValue.GetString("vpcId"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = ProbeStateMapper::GetProbeStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("createdAt")) + { + m_createdAt = jsonValue.GetDouble("createdAt"); + + } + + if(jsonValue.ValueExists("modifiedAt")) + { + m_modifiedAt = jsonValue.GetDouble("modifiedAt"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsRequest.cpp new file mode 100644 index 00000000000..faba4c11355 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsRequest.cpp @@ -0,0 +1,58 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +ListMonitorsRequest::ListMonitorsRequest() : + m_nextTokenHasBeenSet(false), + m_maxResults(0), + m_maxResultsHasBeenSet(false), + m_stateHasBeenSet(false) +{ +} + +Aws::String ListMonitorsRequest::SerializePayload() const +{ + return {}; +} + +void ListMonitorsRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_nextTokenHasBeenSet) + { + ss << m_nextToken; + uri.AddQueryStringParameter("nextToken", ss.str()); + ss.str(""); + } + + if(m_maxResultsHasBeenSet) + { + ss << m_maxResults; + uri.AddQueryStringParameter("maxResults", ss.str()); + ss.str(""); + } + + if(m_stateHasBeenSet) + { + ss << m_state; + uri.AddQueryStringParameter("state", ss.str()); + ss.str(""); + } + +} + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsResult.cpp new file mode 100644 index 00000000000..64a70744f0e --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListMonitorsResult.cpp @@ -0,0 +1,57 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +ListMonitorsResult::ListMonitorsResult() +{ +} + +ListMonitorsResult::ListMonitorsResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +ListMonitorsResult& ListMonitorsResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("monitors")) + { + Aws::Utils::Array monitorsJsonList = jsonValue.GetArray("monitors"); + for(unsigned monitorsIndex = 0; monitorsIndex < monitorsJsonList.GetLength(); ++monitorsIndex) + { + m_monitors.push_back(monitorsJsonList[monitorsIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("nextToken")) + { + m_nextToken = jsonValue.GetString("nextToken"); + + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceRequest.cpp new file mode 100644 index 00000000000..17c2762e339 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceRequest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +ListTagsForResourceRequest::ListTagsForResourceRequest() : + m_resourceArnHasBeenSet(false) +{ +} + +Aws::String ListTagsForResourceRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceResult.cpp new file mode 100644 index 00000000000..67489bc967c --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ListTagsForResourceResult.cpp @@ -0,0 +1,51 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +ListTagsForResourceResult::ListTagsForResourceResult() +{ +} + +ListTagsForResourceResult::ListTagsForResourceResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +ListTagsForResourceResult& ListTagsForResourceResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorState.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorState.cpp new file mode 100644 index 00000000000..df94e6c33ac --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorState.cpp @@ -0,0 +1,93 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace NetworkMonitor + { + namespace Model + { + namespace MonitorStateMapper + { + + static const int PENDING_HASH = HashingUtils::HashString("PENDING"); + static const int ACTIVE_HASH = HashingUtils::HashString("ACTIVE"); + static const int INACTIVE_HASH = HashingUtils::HashString("INACTIVE"); + static const int ERROR__HASH = HashingUtils::HashString("ERROR"); + static const int DELETING_HASH = HashingUtils::HashString("DELETING"); + + + MonitorState GetMonitorStateForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == PENDING_HASH) + { + return MonitorState::PENDING; + } + else if (hashCode == ACTIVE_HASH) + { + return MonitorState::ACTIVE; + } + else if (hashCode == INACTIVE_HASH) + { + return MonitorState::INACTIVE; + } + else if (hashCode == ERROR__HASH) + { + return MonitorState::ERROR_; + } + else if (hashCode == DELETING_HASH) + { + return MonitorState::DELETING; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return MonitorState::NOT_SET; + } + + Aws::String GetNameForMonitorState(MonitorState enumValue) + { + switch(enumValue) + { + case MonitorState::NOT_SET: + return {}; + case MonitorState::PENDING: + return "PENDING"; + case MonitorState::ACTIVE: + return "ACTIVE"; + case MonitorState::INACTIVE: + return "INACTIVE"; + case MonitorState::ERROR_: + return "ERROR"; + case MonitorState::DELETING: + return "DELETING"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace MonitorStateMapper + } // namespace Model + } // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorSummary.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorSummary.cpp new file mode 100644 index 00000000000..81f6dee51a4 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/MonitorSummary.cpp @@ -0,0 +1,130 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + +MonitorSummary::MonitorSummary() : + m_monitorArnHasBeenSet(false), + m_monitorNameHasBeenSet(false), + m_state(MonitorState::NOT_SET), + m_stateHasBeenSet(false), + m_aggregationPeriod(0), + m_aggregationPeriodHasBeenSet(false), + m_tagsHasBeenSet(false) +{ +} + +MonitorSummary::MonitorSummary(JsonView jsonValue) : + m_monitorArnHasBeenSet(false), + m_monitorNameHasBeenSet(false), + m_state(MonitorState::NOT_SET), + m_stateHasBeenSet(false), + m_aggregationPeriod(0), + m_aggregationPeriodHasBeenSet(false), + m_tagsHasBeenSet(false) +{ + *this = jsonValue; +} + +MonitorSummary& MonitorSummary::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("monitorArn")) + { + m_monitorArn = jsonValue.GetString("monitorArn"); + + m_monitorArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("monitorName")) + { + m_monitorName = jsonValue.GetString("monitorName"); + + m_monitorNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("state")) + { + m_state = MonitorStateMapper::GetMonitorStateForName(jsonValue.GetString("state")); + + m_stateHasBeenSet = true; + } + + if(jsonValue.ValueExists("aggregationPeriod")) + { + m_aggregationPeriod = jsonValue.GetInt64("aggregationPeriod"); + + m_aggregationPeriodHasBeenSet = true; + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + m_tagsHasBeenSet = true; + } + + return *this; +} + +JsonValue MonitorSummary::Jsonize() const +{ + JsonValue payload; + + if(m_monitorArnHasBeenSet) + { + payload.WithString("monitorArn", m_monitorArn); + + } + + if(m_monitorNameHasBeenSet) + { + payload.WithString("monitorName", m_monitorName); + + } + + if(m_stateHasBeenSet) + { + payload.WithString("state", MonitorStateMapper::GetNameForMonitorState(m_state)); + } + + if(m_aggregationPeriodHasBeenSet) + { + payload.WithInt64("aggregationPeriod", m_aggregationPeriod); + + } + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/Probe.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/Probe.cpp new file mode 100644 index 00000000000..c8be10d72ea --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/Probe.cpp @@ -0,0 +1,252 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + +Probe::Probe() : + m_probeIdHasBeenSet(false), + m_probeArnHasBeenSet(false), + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_addressFamily(AddressFamily::NOT_SET), + m_addressFamilyHasBeenSet(false), + m_vpcIdHasBeenSet(false), + m_state(ProbeState::NOT_SET), + m_stateHasBeenSet(false), + m_createdAtHasBeenSet(false), + m_modifiedAtHasBeenSet(false), + m_tagsHasBeenSet(false) +{ +} + +Probe::Probe(JsonView jsonValue) : + m_probeIdHasBeenSet(false), + m_probeArnHasBeenSet(false), + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_addressFamily(AddressFamily::NOT_SET), + m_addressFamilyHasBeenSet(false), + m_vpcIdHasBeenSet(false), + m_state(ProbeState::NOT_SET), + m_stateHasBeenSet(false), + m_createdAtHasBeenSet(false), + m_modifiedAtHasBeenSet(false), + m_tagsHasBeenSet(false) +{ + *this = jsonValue; +} + +Probe& Probe::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("probeId")) + { + m_probeId = jsonValue.GetString("probeId"); + + m_probeIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("probeArn")) + { + m_probeArn = jsonValue.GetString("probeArn"); + + m_probeArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + m_sourceArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + m_destinationHasBeenSet = true; + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + m_destinationPortHasBeenSet = true; + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + m_protocolHasBeenSet = true; + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + m_packetSizeHasBeenSet = true; + } + + if(jsonValue.ValueExists("addressFamily")) + { + m_addressFamily = AddressFamilyMapper::GetAddressFamilyForName(jsonValue.GetString("addressFamily")); + + m_addressFamilyHasBeenSet = true; + } + + if(jsonValue.ValueExists("vpcId")) + { + m_vpcId = jsonValue.GetString("vpcId"); + + m_vpcIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("state")) + { + m_state = ProbeStateMapper::GetProbeStateForName(jsonValue.GetString("state")); + + m_stateHasBeenSet = true; + } + + if(jsonValue.ValueExists("createdAt")) + { + m_createdAt = jsonValue.GetDouble("createdAt"); + + m_createdAtHasBeenSet = true; + } + + if(jsonValue.ValueExists("modifiedAt")) + { + m_modifiedAt = jsonValue.GetDouble("modifiedAt"); + + m_modifiedAtHasBeenSet = true; + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + m_tagsHasBeenSet = true; + } + + return *this; +} + +JsonValue Probe::Jsonize() const +{ + JsonValue payload; + + if(m_probeIdHasBeenSet) + { + payload.WithString("probeId", m_probeId); + + } + + if(m_probeArnHasBeenSet) + { + payload.WithString("probeArn", m_probeArn); + + } + + if(m_sourceArnHasBeenSet) + { + payload.WithString("sourceArn", m_sourceArn); + + } + + if(m_destinationHasBeenSet) + { + payload.WithString("destination", m_destination); + + } + + if(m_destinationPortHasBeenSet) + { + payload.WithInteger("destinationPort", m_destinationPort); + + } + + if(m_protocolHasBeenSet) + { + payload.WithString("protocol", ProtocolMapper::GetNameForProtocol(m_protocol)); + } + + if(m_packetSizeHasBeenSet) + { + payload.WithInteger("packetSize", m_packetSize); + + } + + if(m_addressFamilyHasBeenSet) + { + payload.WithString("addressFamily", AddressFamilyMapper::GetNameForAddressFamily(m_addressFamily)); + } + + if(m_vpcIdHasBeenSet) + { + payload.WithString("vpcId", m_vpcId); + + } + + if(m_stateHasBeenSet) + { + payload.WithString("state", ProbeStateMapper::GetNameForProbeState(m_state)); + } + + if(m_createdAtHasBeenSet) + { + payload.WithDouble("createdAt", m_createdAt.SecondsWithMSPrecision()); + } + + if(m_modifiedAtHasBeenSet) + { + payload.WithDouble("modifiedAt", m_modifiedAt.SecondsWithMSPrecision()); + } + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeInput.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeInput.cpp new file mode 100644 index 00000000000..46903f54edf --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeInput.cpp @@ -0,0 +1,147 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace NetworkMonitor +{ +namespace Model +{ + +ProbeInput::ProbeInput() : + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_tagsHasBeenSet(false) +{ +} + +ProbeInput::ProbeInput(JsonView jsonValue) : + m_sourceArnHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false), + m_tagsHasBeenSet(false) +{ + *this = jsonValue; +} + +ProbeInput& ProbeInput::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + m_sourceArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + m_destinationHasBeenSet = true; + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + m_destinationPortHasBeenSet = true; + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + m_protocolHasBeenSet = true; + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + m_packetSizeHasBeenSet = true; + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + m_tagsHasBeenSet = true; + } + + return *this; +} + +JsonValue ProbeInput::Jsonize() const +{ + JsonValue payload; + + if(m_sourceArnHasBeenSet) + { + payload.WithString("sourceArn", m_sourceArn); + + } + + if(m_destinationHasBeenSet) + { + payload.WithString("destination", m_destination); + + } + + if(m_destinationPortHasBeenSet) + { + payload.WithInteger("destinationPort", m_destinationPort); + + } + + if(m_protocolHasBeenSet) + { + payload.WithString("protocol", ProtocolMapper::GetNameForProtocol(m_protocol)); + } + + if(m_packetSizeHasBeenSet) + { + payload.WithInteger("packetSize", m_packetSize); + + } + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload; +} + +} // namespace Model +} // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeState.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeState.cpp new file mode 100644 index 00000000000..51c1b6a2805 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/ProbeState.cpp @@ -0,0 +1,100 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace NetworkMonitor + { + namespace Model + { + namespace ProbeStateMapper + { + + static const int PENDING_HASH = HashingUtils::HashString("PENDING"); + static const int ACTIVE_HASH = HashingUtils::HashString("ACTIVE"); + static const int INACTIVE_HASH = HashingUtils::HashString("INACTIVE"); + static const int ERROR__HASH = HashingUtils::HashString("ERROR"); + static const int DELETING_HASH = HashingUtils::HashString("DELETING"); + static const int DELETED_HASH = HashingUtils::HashString("DELETED"); + + + ProbeState GetProbeStateForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == PENDING_HASH) + { + return ProbeState::PENDING; + } + else if (hashCode == ACTIVE_HASH) + { + return ProbeState::ACTIVE; + } + else if (hashCode == INACTIVE_HASH) + { + return ProbeState::INACTIVE; + } + else if (hashCode == ERROR__HASH) + { + return ProbeState::ERROR_; + } + else if (hashCode == DELETING_HASH) + { + return ProbeState::DELETING; + } + else if (hashCode == DELETED_HASH) + { + return ProbeState::DELETED; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return ProbeState::NOT_SET; + } + + Aws::String GetNameForProbeState(ProbeState enumValue) + { + switch(enumValue) + { + case ProbeState::NOT_SET: + return {}; + case ProbeState::PENDING: + return "PENDING"; + case ProbeState::ACTIVE: + return "ACTIVE"; + case ProbeState::INACTIVE: + return "INACTIVE"; + case ProbeState::ERROR_: + return "ERROR"; + case ProbeState::DELETING: + return "DELETING"; + case ProbeState::DELETED: + return "DELETED"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace ProbeStateMapper + } // namespace Model + } // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/Protocol.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/Protocol.cpp new file mode 100644 index 00000000000..f712dddef66 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/Protocol.cpp @@ -0,0 +1,72 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace NetworkMonitor + { + namespace Model + { + namespace ProtocolMapper + { + + static const int TCP_HASH = HashingUtils::HashString("TCP"); + static const int ICMP_HASH = HashingUtils::HashString("ICMP"); + + + Protocol GetProtocolForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == TCP_HASH) + { + return Protocol::TCP; + } + else if (hashCode == ICMP_HASH) + { + return Protocol::ICMP; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return Protocol::NOT_SET; + } + + Aws::String GetNameForProtocol(Protocol enumValue) + { + switch(enumValue) + { + case Protocol::NOT_SET: + return {}; + case Protocol::TCP: + return "TCP"; + case Protocol::ICMP: + return "ICMP"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace ProtocolMapper + } // namespace Model + } // namespace NetworkMonitor +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceRequest.cpp new file mode 100644 index 00000000000..ff17f72d428 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceRequest.cpp @@ -0,0 +1,41 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +TagResourceRequest::TagResourceRequest() : + m_resourceArnHasBeenSet(false), + m_tagsHasBeenSet(false) +{ +} + +Aws::String TagResourceRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_tagsHasBeenSet) + { + JsonValue tagsJsonMap; + for(auto& tagsItem : m_tags) + { + tagsJsonMap.WithString(tagsItem.first, tagsItem.second); + } + payload.WithObject("tags", std::move(tagsJsonMap)); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceResult.cpp new file mode 100644 index 00000000000..1d70d6a37a0 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/TagResourceResult.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +TagResourceResult::TagResourceResult() +{ +} + +TagResourceResult::TagResourceResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +TagResourceResult& TagResourceResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + AWS_UNREFERENCED_PARAM(result); + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceRequest.cpp new file mode 100644 index 00000000000..ff3aabfa925 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceRequest.cpp @@ -0,0 +1,45 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +UntagResourceRequest::UntagResourceRequest() : + m_resourceArnHasBeenSet(false), + m_tagKeysHasBeenSet(false) +{ +} + +Aws::String UntagResourceRequest::SerializePayload() const +{ + return {}; +} + +void UntagResourceRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_tagKeysHasBeenSet) + { + for(const auto& item : m_tagKeys) + { + ss << item; + uri.AddQueryStringParameter("tagKeys", ss.str()); + ss.str(""); + } + } + +} + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceResult.cpp new file mode 100644 index 00000000000..60f257186c6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UntagResourceResult.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +UntagResourceResult::UntagResourceResult() +{ +} + +UntagResourceResult::UntagResourceResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +UntagResourceResult& UntagResourceResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + AWS_UNREFERENCED_PARAM(result); + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorRequest.cpp new file mode 100644 index 00000000000..da026cd950a --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorRequest.cpp @@ -0,0 +1,37 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +UpdateMonitorRequest::UpdateMonitorRequest() : + m_monitorNameHasBeenSet(false), + m_aggregationPeriod(0), + m_aggregationPeriodHasBeenSet(false) +{ +} + +Aws::String UpdateMonitorRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_aggregationPeriodHasBeenSet) + { + payload.WithInt64("aggregationPeriod", m_aggregationPeriod); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorResult.cpp new file mode 100644 index 00000000000..2c994a82bf5 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateMonitorResult.cpp @@ -0,0 +1,79 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +UpdateMonitorResult::UpdateMonitorResult() : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ +} + +UpdateMonitorResult::UpdateMonitorResult(const Aws::AmazonWebServiceResult& result) : + m_state(MonitorState::NOT_SET), + m_aggregationPeriod(0) +{ + *this = result; +} + +UpdateMonitorResult& UpdateMonitorResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("monitorArn")) + { + m_monitorArn = jsonValue.GetString("monitorArn"); + + } + + if(jsonValue.ValueExists("monitorName")) + { + m_monitorName = jsonValue.GetString("monitorName"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = MonitorStateMapper::GetMonitorStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("aggregationPeriod")) + { + m_aggregationPeriod = jsonValue.GetInt64("aggregationPeriod"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeRequest.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeRequest.cpp new file mode 100644 index 00000000000..e939596309b --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeRequest.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +UpdateProbeRequest::UpdateProbeRequest() : + m_monitorNameHasBeenSet(false), + m_probeIdHasBeenSet(false), + m_state(ProbeState::NOT_SET), + m_stateHasBeenSet(false), + m_destinationHasBeenSet(false), + m_destinationPort(0), + m_destinationPortHasBeenSet(false), + m_protocol(Protocol::NOT_SET), + m_protocolHasBeenSet(false), + m_packetSize(0), + m_packetSizeHasBeenSet(false) +{ +} + +Aws::String UpdateProbeRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_stateHasBeenSet) + { + payload.WithString("state", ProbeStateMapper::GetNameForProbeState(m_state)); + } + + if(m_destinationHasBeenSet) + { + payload.WithString("destination", m_destination); + + } + + if(m_destinationPortHasBeenSet) + { + payload.WithInteger("destinationPort", m_destinationPort); + + } + + if(m_protocolHasBeenSet) + { + payload.WithString("protocol", ProtocolMapper::GetNameForProtocol(m_protocol)); + } + + if(m_packetSizeHasBeenSet) + { + payload.WithInteger("packetSize", m_packetSize); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeResult.cpp b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeResult.cpp new file mode 100644 index 00000000000..41f60d058e3 --- /dev/null +++ b/generated/src/aws-cpp-sdk-networkmonitor/source/model/UpdateProbeResult.cpp @@ -0,0 +1,133 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::NetworkMonitor::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +UpdateProbeResult::UpdateProbeResult() : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ +} + +UpdateProbeResult::UpdateProbeResult(const Aws::AmazonWebServiceResult& result) : + m_destinationPort(0), + m_protocol(Protocol::NOT_SET), + m_packetSize(0), + m_addressFamily(AddressFamily::NOT_SET), + m_state(ProbeState::NOT_SET) +{ + *this = result; +} + +UpdateProbeResult& UpdateProbeResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("probeId")) + { + m_probeId = jsonValue.GetString("probeId"); + + } + + if(jsonValue.ValueExists("probeArn")) + { + m_probeArn = jsonValue.GetString("probeArn"); + + } + + if(jsonValue.ValueExists("sourceArn")) + { + m_sourceArn = jsonValue.GetString("sourceArn"); + + } + + if(jsonValue.ValueExists("destination")) + { + m_destination = jsonValue.GetString("destination"); + + } + + if(jsonValue.ValueExists("destinationPort")) + { + m_destinationPort = jsonValue.GetInteger("destinationPort"); + + } + + if(jsonValue.ValueExists("protocol")) + { + m_protocol = ProtocolMapper::GetProtocolForName(jsonValue.GetString("protocol")); + + } + + if(jsonValue.ValueExists("packetSize")) + { + m_packetSize = jsonValue.GetInteger("packetSize"); + + } + + if(jsonValue.ValueExists("addressFamily")) + { + m_addressFamily = AddressFamilyMapper::GetAddressFamilyForName(jsonValue.GetString("addressFamily")); + + } + + if(jsonValue.ValueExists("vpcId")) + { + m_vpcId = jsonValue.GetString("vpcId"); + + } + + if(jsonValue.ValueExists("state")) + { + m_state = ProbeStateMapper::GetProbeStateForName(jsonValue.GetString("state")); + + } + + if(jsonValue.ValueExists("createdAt")) + { + m_createdAt = jsonValue.GetDouble("createdAt"); + + } + + if(jsonValue.ValueExists("modifiedAt")) + { + m_modifiedAt = jsonValue.GetDouble("modifiedAt"); + + } + + if(jsonValue.ValueExists("tags")) + { + Aws::Map tagsJsonMap = jsonValue.GetObject("tags").GetAllObjects(); + for(auto& tagsItem : tagsJsonMap) + { + m_tags[tagsItem.first] = tagsItem.second.AsString(); + } + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-omics/include/aws/omics/OmicsClient.h b/generated/src/aws-cpp-sdk-omics/include/aws/omics/OmicsClient.h index ea192030507..bfaf7437f09 100644 --- a/generated/src/aws-cpp-sdk-omics/include/aws/omics/OmicsClient.h +++ b/generated/src/aws-cpp-sdk-omics/include/aws/omics/OmicsClient.h @@ -1312,8 +1312,9 @@ namespace Omics } /** - *

Lists all multipart read set uploads and their statuses.

See - * Also:

Lists multipart read set uploads and for in progress uploads. Once the + * upload is completed, a read set is created and the upload will no longer be + * returned in the respone.

See Also:

AWS * API Reference

*/ diff --git a/generated/src/aws-cpp-sdk-omics/include/aws/omics/model/CreateWorkflowRequest.h b/generated/src/aws-cpp-sdk-omics/include/aws/omics/model/CreateWorkflowRequest.h index afcd3312acc..8a916d1f574 100644 --- a/generated/src/aws-cpp-sdk-omics/include/aws/omics/model/CreateWorkflowRequest.h +++ b/generated/src/aws-cpp-sdk-omics/include/aws/omics/model/CreateWorkflowRequest.h @@ -326,22 +326,22 @@ namespace Model /** - *

A storage capacity for the workflow in gigabytes.

+ *

A storage capacity for the workflow in gibibytes.

*/ inline int GetStorageCapacity() const{ return m_storageCapacity; } /** - *

A storage capacity for the workflow in gigabytes.

+ *

A storage capacity for the workflow in gibibytes.

*/ inline bool StorageCapacityHasBeenSet() const { return m_storageCapacityHasBeenSet; } /** - *

A storage capacity for the workflow in gigabytes.

+ *

A storage capacity for the workflow in gibibytes.

*/ inline void SetStorageCapacity(int value) { m_storageCapacityHasBeenSet = true; m_storageCapacity = value; } /** - *

A storage capacity for the workflow in gigabytes.

+ *

A storage capacity for the workflow in gibibytes.

*/ inline CreateWorkflowRequest& WithStorageCapacity(int value) { SetStorageCapacity(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-secretsmanager/source/SecretsManagerEndpointRules.cpp b/generated/src/aws-cpp-sdk-secretsmanager/source/SecretsManagerEndpointRules.cpp index 20fad336483..8456222c612 100644 --- a/generated/src/aws-cpp-sdk-secretsmanager/source/SecretsManagerEndpointRules.cpp +++ b/generated/src/aws-cpp-sdk-secretsmanager/source/SecretsManagerEndpointRules.cpp @@ -10,8 +10,8 @@ namespace Aws { namespace SecretsManager { -const size_t SecretsManagerEndpointRules::RulesBlobStrLen = 3504; -const size_t SecretsManagerEndpointRules::RulesBlobSize = 3505; +const size_t SecretsManagerEndpointRules::RulesBlobStrLen = 4669; +const size_t SecretsManagerEndpointRules::RulesBlobSize = 4670; using RulesBlobT = Aws::Array; static constexpr RulesBlobT RulesBlob = {{ @@ -92,70 +92,116 @@ static constexpr RulesBlobT RulesBlob = {{ 'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t', 'i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l', 'S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o', -'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{', -'"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n', -'a','g','e','r','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i', -'t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u', -'f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h', -'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o', -'i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c', -'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I', -'P','S',' ','a','n','d',' ','D','u','a','l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b', -'l','e','d',',',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d', -'o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o', -'t','h','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p', -'e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':', -'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a', -'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t', -'r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i', -'o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l', -'s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r', -'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i', -'o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"', -']','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n', -'d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"', -'u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a', -'g','e','r','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t', -'i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r', -'o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}', -'}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y', -'p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', -':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','i','s',' ','e','n','a','b', -'l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o', -'e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p', -'e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e', +'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E', +'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','"','a','w','s','"',',','{','"','f','n', +'"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f', +'"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','n','a','m', +'e','"',']','}',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"', +':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r','-', +'f','i','p','s','.','{','R','e','g','i','o','n','}','.','a','m','a','z','o','n','a','w','s','.','c', +'o','m','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d', +'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t', '"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"', -'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"', -'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e', -']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s', -'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',', -'"','a','r','g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t', -'t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i', -'t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a', -'l','S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c', -'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':', -'{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a', -'n','a','g','e','r','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n', +'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','"','a','w', +'s','-','u','s','-','g','o','v','"',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"', +',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o', +'n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',']','}',']',',','"','e','n', +'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s', +'e','c','r','e','t','s','m','a','n','a','g','e','r','-','f','i','p','s','.','{','R','e','g','i','o', +'n','}','.','a','m','a','z','o','n','a','w','s','.','c','o','m','"',',','"','p','r','o','p','e','r', +'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t', +'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t', +'i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l', +'"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r', +'-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n', 'R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x', '}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e', 'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"', '}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i', -'t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','D','u','a','l','S','t', -'a','c','k',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p', -'a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t', -' ','D','u','a','l','S','t','a','c','k','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r', -'"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d', -'i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u', -'r','l','"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g', -'e','r','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s', -'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i', -'e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p', -'e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t', -'r','e','e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c', -'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n', -'v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','M','i','s','s', -'i','n','g',' ','R','e','g','i','o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r', -'"','}',']','}','\0' +'t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','a', +'n','d',' ','D','u','a','l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e','d',',', +' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ', +'n','o','t',' ','s','u','p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',', +'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"', +'t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f', +'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"', +':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']', +'}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"', +':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"', +'a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a', +'r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e', +'s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',',','t', +'r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i', +'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"', +':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r','-', +'f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R', +'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r', +'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t', +'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':', +'"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',', +'"','e','r','r','o','r','"',':','"','F','I','P','S',' ','i','s',' ','e','n','a','b','l','e','d',' ', +'b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n', +'o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"', +'e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{', +'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l', +'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"', +':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',', +'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{', +'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g', +'v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',', +'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n', +'R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a', +'c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i', +'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a', +'l','s','"',',','"','a','r','g','v','"',':','[','"','a','w','s','"',',','{','"','f','n','"',':','"', +'g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"', +'P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']', +'}',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h', +'t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r','.','{','R','e', +'g','i','o','n','}','.','a','m','a','z','o','n','a','w','s','.','c','o','m','"',',','"','p','r','o', +'p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}', +',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n', +'d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q', +'u','a','l','s','"',',','"','a','r','g','v','"',':','[','"','a','w','s','-','c','n','"',',','{','"', +'f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r', +'e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','n', +'a','m','e','"',']','}',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r', +'l','"',':','"','h','t','t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e', +'r','.','{','R','e','g','i','o','n','}','.','a','m','a','z','o','n','a','w','s','.','c','o','m','.', +'c','n','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d', +'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t', +'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"', +'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','"','a','w', +'s','-','u','s','-','g','o','v','"',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"', +',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o', +'n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',']','}',']',',','"','e','n', +'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s', +'e','c','r','e','t','s','m','a','n','a','g','e','r','.','{','R','e','g','i','o','n','}','.','a','m', +'a','z','o','n','a','w','s','.','c','o','m','"',',','"','p','r','o','p','e','r','t','i','e','s','"', +':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':', +'"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', +':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t', +'t','p','s',':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r','.','{','R','e','g', +'i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a', +'l','S','t','a','c','k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r', +'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t', +'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':', +'"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',', +'"','e','r','r','o','r','"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s',' ','e','n','a', +'b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d', +'o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S','t','a','c','k', +'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"', +':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']', +',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s', +':','/','/','s','e','c','r','e','t','s','m','a','n','a','g','e','r','.','{','R','e','g','i','o','n', +'}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f', +'f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e', +'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i', +'n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y', +'p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"', +':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f', +'i','g','u','r','a','t','i','o','n',':',' ','M','i','s','s','i','n','g',' ','R','e','g','i','o','n', +'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}','\0' }}; const char* SecretsManagerEndpointRules::GetRulesBlob() diff --git a/generated/tests/networkmonitor-gen-tests/CMakeLists.txt b/generated/tests/networkmonitor-gen-tests/CMakeLists.txt new file mode 100644 index 00000000000..2af46db8f24 --- /dev/null +++ b/generated/tests/networkmonitor-gen-tests/CMakeLists.txt @@ -0,0 +1,42 @@ +add_project(networkmonitor-gen-tests + "Tests for the AWS NETWORKMONITOR C++ SDK" + testing-resources + aws-cpp-sdk-networkmonitor + aws-cpp-sdk-core) + +file(GLOB AWS_NETWORKMONITOR_GENERATED_TEST_SRC + "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" +) + +if(MSVC AND BUILD_SHARED_LIBS) + add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1) +endif() + +if (CMAKE_CROSSCOMPILING) + set(AUTORUN_UNIT_TESTS OFF) +endif() + +if (AUTORUN_UNIT_TESTS) + enable_testing() +endif() + +if(PLATFORM_ANDROID AND BUILD_SHARED_LIBS) + add_library(${PROJECT_NAME} "${AWS_NETWORKMONITOR_GENERATED_TEST_SRC}") +else() + add_executable(${PROJECT_NAME} "${AWS_NETWORKMONITOR_GENERATED_TEST_SRC}") +endif() + +set_compiler_flags(${PROJECT_NAME}) +set_compiler_warnings(${PROJECT_NAME}) + +target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS}) + +if (AUTORUN_UNIT_TESTS) + ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} -E env LD_LIBRARY_PATH=${AWS_AUTORUN_LD_LIBRARY_PATH}:$ENV{LD_LIBRARY_PATH} $ + ARGS "--gtest_brief=1") +endif() + +if(NOT CMAKE_CROSSCOMPILING) + SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) +endif() \ No newline at end of file diff --git a/generated/tests/networkmonitor-gen-tests/NetworkMonitorEndpointProviderTests.cpp b/generated/tests/networkmonitor-gen-tests/NetworkMonitorEndpointProviderTests.cpp new file mode 100644 index 00000000000..d669fa70cd2 --- /dev/null +++ b/generated/tests/networkmonitor-gen-tests/NetworkMonitorEndpointProviderTests.cpp @@ -0,0 +1,402 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + + +static const char* ALLOCATION_TAG = "AWSNetworkMonitorEndpointProviderTests"; +using NetworkMonitorEndpointProvider = Aws::NetworkMonitor::Endpoint::NetworkMonitorEndpointProvider; +using EndpointParameters = Aws::Vector; +using ResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome; + +using EpParam = Aws::Endpoint::EndpointParameter; +using EpProp = Aws::Endpoint::EndpointParameter; // just a container to store test expectations +using ExpEpProps = Aws::UnorderedMap>>; +using ExpEpAuthScheme = Aws::Vector; +using ExpEpHeaders = Aws::UnorderedMap>; + +class NetworkMonitorEndpointProviderTests : public ::testing::TestWithParam {}; + +struct NetworkMonitorEndpointProviderEndpointTestCase +{ + using OperationParamsFromTest = EndpointParameters; + + struct Expect + { + struct Endpoint + { + Aws::String url; + ExpEpAuthScheme authScheme; + ExpEpProps properties; + ExpEpHeaders headers; + } endpoint; + Aws::String error; + }; + struct OperationInput + { + Aws::String operationName; + OperationParamsFromTest operationParams; + OperationParamsFromTest builtinParams; + OperationParamsFromTest clientParams; + }; + + Aws::String documentation; + // Specification tells us it is Client Initialization parameters + // At the same time, specification tells us to test EndpointProvider not the client itself + // Hence params here will be set as a client params (just like a dedicated field above). + Aws::Vector params; + Aws::Vector tags; + Expect expect; + // Aws::Vector operationInput; +}; + +static const Aws::Vector TEST_CASES = { + /*TEST CASE 0*/ + {"For region us-east-1 with FIPS enabled and DualStack enabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-east-1.api.aws", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 1*/ + {"For region us-east-1 with FIPS enabled and DualStack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-east-1.amazonaws.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 2*/ + {"For region us-east-1 with FIPS disabled and DualStack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-east-1.api.aws", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 3*/ + {"For region us-east-1 with FIPS disabled and DualStack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-east-1.amazonaws.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 4*/ + {"For region cn-north-1 with FIPS enabled and DualStack enabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.cn-north-1.api.amazonwebservices.com.cn", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 5*/ + {"For region cn-north-1 with FIPS enabled and DualStack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.cn-north-1.amazonaws.com.cn", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 6*/ + {"For region cn-north-1 with FIPS disabled and DualStack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.cn-north-1.api.amazonwebservices.com.cn", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 7*/ + {"For region cn-north-1 with FIPS disabled and DualStack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.cn-north-1.amazonaws.com.cn", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 8*/ + {"For region us-gov-east-1 with FIPS enabled and DualStack enabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-gov-east-1.api.aws", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 9*/ + {"For region us-gov-east-1 with FIPS enabled and DualStack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-gov-east-1.amazonaws.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 10*/ + {"For region us-gov-east-1 with FIPS disabled and DualStack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-gov-east-1.api.aws", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 11*/ + {"For region us-gov-east-1 with FIPS disabled and DualStack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-gov-east-1.amazonaws.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 12*/ + {"For region us-iso-east-1 with FIPS enabled and DualStack enabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"FIPS and DualStack are enabled, but this partition does not support one or both"} // expect + }, + /*TEST CASE 13*/ + {"For region us-iso-east-1 with FIPS enabled and DualStack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-iso-east-1.c2s.ic.gov", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 14*/ + {"For region us-iso-east-1 with FIPS disabled and DualStack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"DualStack is enabled but this partition does not support DualStack"} // expect + }, + /*TEST CASE 15*/ + {"For region us-iso-east-1 with FIPS disabled and DualStack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-iso-east-1.c2s.ic.gov", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 16*/ + {"For region us-isob-east-1 with FIPS enabled and DualStack enabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-isob-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"FIPS and DualStack are enabled, but this partition does not support one or both"} // expect + }, + /*TEST CASE 17*/ + {"For region us-isob-east-1 with FIPS enabled and DualStack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Region", "us-isob-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor-fips.us-isob-east-1.sc2s.sgov.gov", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 18*/ + {"For region us-isob-east-1 with FIPS disabled and DualStack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-isob-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"DualStack is enabled but this partition does not support DualStack"} // expect + }, + /*TEST CASE 19*/ + {"For region us-isob-east-1 with FIPS disabled and DualStack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Region", "us-isob-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://networkmonitor.us-isob-east-1.sc2s.sgov.gov", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 20*/ + {"For custom endpoint with region set and fips disabled and dualstack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Endpoint", "https://example.com"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://example.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 21*/ + {"For custom endpoint with region not set and fips disabled and dualstack disabled", // documentation + {EpParam("UseFIPS", false), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*epUrl*/"https://example.com", + {/*authScheme*/}, + {/*properties*/}, + {/*headers*/}}, {/*No error*/}} // expect + }, + /*TEST CASE 22*/ + {"For custom endpoint with fips enabled and dualstack disabled", // documentation + {EpParam("UseFIPS", true), EpParam("Endpoint", "https://example.com"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: FIPS and custom endpoint are not supported"} // expect + }, + /*TEST CASE 23*/ + {"For custom endpoint with fips disabled and dualstack enabled", // documentation + {EpParam("UseFIPS", false), EpParam("Endpoint", "https://example.com"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Dualstack and custom endpoint are not supported"} // expect + }, + /*TEST CASE 24*/ + {"Missing region", // documentation + {}, // params + {}, // tags + {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Missing Region"} // expect + } +}; + +Aws::String RulesToSdkSignerName(const Aws::String& rulesSignerName) +{ + Aws::String sdkSigner = "NullSigner"; + if (rulesSignerName == "sigv4") { + sdkSigner = "SignatureV4"; + } else if (rulesSignerName == "sigv4a") { + sdkSigner = "AsymmetricSignatureV4"; + } else if (rulesSignerName == "none") { + sdkSigner = "NullSigner"; + } else if (rulesSignerName == "bearer") { + sdkSigner = "Bearer"; + } else if (rulesSignerName == "s3Express") { + sdkSigner = "S3ExpressSigner"; + } else { + sdkSigner = rulesSignerName; + } + + return sdkSigner; +} + +void ValidateOutcome(const ResolveEndpointOutcome& outcome, const NetworkMonitorEndpointProviderEndpointTestCase::Expect& expect) +{ + if(!expect.error.empty()) + { + ASSERT_FALSE(outcome.IsSuccess()) << "Expected failure with message:\n" << expect.error; + ASSERT_EQ(outcome.GetError().GetMessage(), expect.error); + } + else + { + AWS_ASSERT_SUCCESS(outcome); + ASSERT_EQ(outcome.GetResult().GetURL(), expect.endpoint.url); + const auto expAuthSchemesIt = expect.endpoint.properties.find("authSchemes"); + if (expAuthSchemesIt != expect.endpoint.properties.end()) + { + // in the list of AuthSchemes, select the one with a highest priority + const Aws::Vector priotityList = {"s3Express", "sigv4a", "sigv4", "bearer", "none", ""}; + const auto expectedAuthSchemePropsIt = std::find_first_of(expAuthSchemesIt->second.begin(), expAuthSchemesIt->second.end(), + priotityList.begin(), priotityList.end(), [](const Aws::Vector& props, const Aws::String& expName) + { + const auto& propNameIt = std::find_if(props.begin(), props.end(), [](const EpProp& prop) + { + return prop.GetName() == "name"; + }); + assert(propNameIt != props.end()); + return propNameIt->GetStrValueNoCheck() == expName; + }); + assert(expectedAuthSchemePropsIt != expAuthSchemesIt->second.end()); + + const auto& endpointResultAttrs = outcome.GetResult().GetAttributes(); + ASSERT_TRUE(endpointResultAttrs) << "Expected non-empty EndpointAttributes (authSchemes)"; + for (const auto& expProperty : *expectedAuthSchemePropsIt) + { + if (expProperty.GetName() == "name") { + ASSERT_TRUE(!endpointResultAttrs->authScheme.GetName().empty()); + ASSERT_EQ(RulesToSdkSignerName(expProperty.GetStrValueNoCheck()), endpointResultAttrs->authScheme.GetName()); + } else if (expProperty.GetName() == "signingName") { + ASSERT_TRUE(endpointResultAttrs->authScheme.GetSigningName()); + ASSERT_EQ(expProperty.GetStrValueNoCheck(), endpointResultAttrs->authScheme.GetSigningName().value()); + } else if (expProperty.GetName() == "signingRegion") { + ASSERT_TRUE(endpointResultAttrs->authScheme.GetSigningRegion()); + ASSERT_EQ(expProperty.GetStrValueNoCheck(), endpointResultAttrs->authScheme.GetSigningRegion().value()); + } else if (expProperty.GetName() == "signingRegionSet") { + ASSERT_TRUE(endpointResultAttrs->authScheme.GetSigningRegionSet()); + ASSERT_EQ(expProperty.GetStrValueNoCheck(), endpointResultAttrs->authScheme.GetSigningRegionSet().value()); + } else if (expProperty.GetName() == "disableDoubleEncoding") { + ASSERT_TRUE(endpointResultAttrs->authScheme.GetDisableDoubleEncoding()); + ASSERT_EQ(expProperty.GetBoolValueNoCheck(), endpointResultAttrs->authScheme.GetDisableDoubleEncoding().value()); + } else { + FAIL() << "Unsupported Auth type property " << expProperty.GetName() << ". Need to update test."; + } + } + } + + EXPECT_EQ(expect.endpoint.headers.empty(), outcome.GetResult().GetHeaders().empty()); + for(const auto& expHeaderVec : expect.endpoint.headers) + { + const auto& retHeaderIt = outcome.GetResult().GetHeaders().find(expHeaderVec.first); + ASSERT_TRUE(retHeaderIt != outcome.GetResult().GetHeaders().end()); + + auto retHeaderVec = Aws::Utils::StringUtils::Split(retHeaderIt->second, ';'); + std::sort(retHeaderVec.begin(), retHeaderVec.end()); + + auto expHeaderVecSorted = expHeaderVec.second; + std::sort(expHeaderVecSorted.begin(), expHeaderVecSorted.end()); + + ASSERT_EQ(expHeaderVecSorted, retHeaderVec); + } + } +} + +TEST_P(NetworkMonitorEndpointProviderTests, EndpointProviderTest) +{ + const size_t TEST_CASE_IDX = GetParam(); + ASSERT_LT(TEST_CASE_IDX, TEST_CASES.size()) << "Something is wrong with the test fixture itself."; + const NetworkMonitorEndpointProviderEndpointTestCase& TEST_CASE = TEST_CASES.at(TEST_CASE_IDX); + SCOPED_TRACE(Aws::String("\nTEST CASE # ") + Aws::Utils::StringUtils::to_string(TEST_CASE_IDX) + ": " + TEST_CASE.documentation); + + std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG); + ASSERT_TRUE(endpointProvider) << "Failed to allocate/initialize NetworkMonitorEndpointProvider"; + + EndpointParameters endpointParameters; + for(const auto& param : TEST_CASE.params) + { + endpointParameters.emplace(endpointParameters.end(), Aws::Endpoint::EndpointParameter(param)); + } + auto resolvedEndpointOutcome = endpointProvider->ResolveEndpoint(endpointParameters); + ValidateOutcome(resolvedEndpointOutcome, TEST_CASE.expect); + +#if 0 // temporarily disabled + for(const auto& operation : TEST_CASE.operationInput) + { + /* + * Most specific to least specific value locations: + staticContextParams + contextParam + clientContextParams + Built-In Bindings + Built-in binding default values + */ + const Aws::Vector> + operationInputParams = {std::cref(operation.builtinParams), std::cref(operation.clientParams), std::cref(operation.operationParams)}; + + for(const auto& paramSource : operationInputParams) + { + for(const auto& param : paramSource.get()) + { + endpointParameters.emplace(endpointParameters.end(), Aws::Endpoint::EndpointParameter(param)); + } + } + auto resolvedEndpointOutcomePerOperation = endpointProvider->ResolveEndpoint(endpointParameters); + ValidateOutcome(resolvedEndpointOutcomePerOperation, TEST_CASE.expect); + } +#endif +} + +INSTANTIATE_TEST_SUITE_P(EndpointTestsFromModel, + NetworkMonitorEndpointProviderTests, + ::testing::Range((size_t) 0u, TEST_CASES.size())); diff --git a/generated/tests/networkmonitor-gen-tests/RunTests.cpp b/generated/tests/networkmonitor-gen-tests/RunTests.cpp new file mode 100644 index 00000000000..f2f10a7c789 --- /dev/null +++ b/generated/tests/networkmonitor-gen-tests/RunTests.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include + +int main(int argc, char** argv) +{ + Aws::SDKOptions options; + options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Trace; + + AWS_BEGIN_MEMORY_TEST_EX(options, 1024, 128); + Aws::Testing::InitPlatformTest(options); + Aws::Testing::ParseArgs(argc, argv); + + Aws::InitAPI(options); + ::testing::InitGoogleTest(&argc, argv); + int exitCode = RUN_ALL_TESTS(); + Aws::ShutdownAPI(options); + + AWS_END_MEMORY_TEST_EX; + Aws::Testing::ShutdownPlatformTest(options); + return exitCode; +} diff --git a/generated/tests/secretsmanager-gen-tests/SecretsManagerEndpointProviderTests.cpp b/generated/tests/secretsmanager-gen-tests/SecretsManagerEndpointProviderTests.cpp index a8ac8e33e51..4cd673af4e4 100644 --- a/generated/tests/secretsmanager-gen-tests/SecretsManagerEndpointProviderTests.cpp +++ b/generated/tests/secretsmanager-gen-tests/SecretsManagerEndpointProviderTests.cpp @@ -303,7 +303,7 @@ static const Aws::Vector TEST_CA {"For region us-east-1 with FIPS enabled and DualStack enabled", // documentation {EpParam("UseFIPS", true), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params {}, // tags - {{/*epUrl*/"https://secretsmanager-fips.us-east-1.api.aws", + {{/*epUrl*/"https://secretsmanager-fips.us-east-1.amazonaws.com", {/*authScheme*/}, {/*properties*/}, {/*headers*/}}, {/*No error*/}} // expect @@ -312,7 +312,7 @@ static const Aws::Vector TEST_CA {"For region us-east-1 with FIPS disabled and DualStack enabled", // documentation {EpParam("UseFIPS", false), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params {}, // tags - {{/*epUrl*/"https://secretsmanager.us-east-1.api.aws", + {{/*epUrl*/"https://secretsmanager.us-east-1.amazonaws.com", {/*authScheme*/}, {/*properties*/}, {/*headers*/}}, {/*No error*/}} // expect @@ -357,7 +357,7 @@ static const Aws::Vector TEST_CA {"For region cn-north-1 with FIPS disabled and DualStack enabled", // documentation {EpParam("UseFIPS", false), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", true)}, // params {}, // tags - {{/*epUrl*/"https://secretsmanager.cn-north-1.api.amazonwebservices.com.cn", + {{/*epUrl*/"https://secretsmanager.cn-north-1.amazonaws.com.cn", {/*authScheme*/}, {/*properties*/}, {/*headers*/}}, {/*No error*/}} // expect @@ -402,7 +402,7 @@ static const Aws::Vector TEST_CA {"For region us-gov-east-1 with FIPS enabled and DualStack enabled", // documentation {EpParam("UseFIPS", true), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params {}, // tags - {{/*epUrl*/"https://secretsmanager-fips.us-gov-east-1.api.aws", + {{/*epUrl*/"https://secretsmanager-fips.us-gov-east-1.amazonaws.com", {/*authScheme*/}, {/*properties*/}, {/*headers*/}}, {/*No error*/}} // expect @@ -411,7 +411,7 @@ static const Aws::Vector TEST_CA {"For region us-gov-east-1 with FIPS disabled and DualStack enabled", // documentation {EpParam("UseFIPS", false), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params {}, // tags - {{/*epUrl*/"https://secretsmanager.us-gov-east-1.api.aws", + {{/*epUrl*/"https://secretsmanager.us-gov-east-1.amazonaws.com", {/*authScheme*/}, {/*properties*/}, {/*headers*/}}, {/*No error*/}} // expect diff --git a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h index 6c4a2d75feb..78b3b788c41 100644 --- a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h +++ b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h @@ -4,7 +4,7 @@ */ #pragma once -#define AWS_SDK_VERSION_STRING "1.11.230" +#define AWS_SDK_VERSION_STRING "1.11.231" #define AWS_SDK_VERSION_MAJOR 1 #define AWS_SDK_VERSION_MINOR 11 -#define AWS_SDK_VERSION_PATCH 230 +#define AWS_SDK_VERSION_PATCH 231 diff --git a/tools/code-generation/api-descriptions/bedrock-agent-2023-06-05.normal.json b/tools/code-generation/api-descriptions/bedrock-agent-2023-06-05.normal.json index 61004e635a1..f770c22f09a 100644 --- a/tools/code-generation/api-descriptions/bedrock-agent-2023-06-05.normal.json +++ b/tools/code-generation/api-descriptions/bedrock-agent-2023-06-05.normal.json @@ -2588,7 +2588,7 @@ "documentation":"

ARN or name of a Bedrock model.

", "max":2048, "min":1, - "pattern":".*(^[a-zA-Z0-9-_.]+$)|(^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}))$)|(^([0-9a-zA-Z][_-]?)+$)|^([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63})" + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)" }, "Name":{ "type":"string", diff --git a/tools/code-generation/api-descriptions/glue-2017-03-31.normal.json b/tools/code-generation/api-descriptions/glue-2017-03-31.normal.json index f37c3b5a709..f54b2c0981e 100644 --- a/tools/code-generation/api-descriptions/glue-2017-03-31.normal.json +++ b/tools/code-generation/api-descriptions/glue-2017-03-31.normal.json @@ -408,7 +408,7 @@ {"shape":"ResourceNumberLimitExceededException"}, {"shape":"GlueEncryptionException"} ], - "documentation":"

Creates a connection definition in the Data Catalog.

" + "documentation":"

Creates a connection definition in the Data Catalog.

Connections used for creating federated resources require the IAM glue:PassConnection permission.

" }, "CreateCrawler":{ "name":"CreateCrawler", @@ -3589,6 +3589,11 @@ "type":"list", "member":{"shape":"Action"} }, + "AdditionalContextMap":{ + "type":"map", + "key":{"shape":"ContextKey"}, + "value":{"shape":"ContextValue"} + }, "AdditionalOptionKeys":{ "type":"string", "enum":[ @@ -6476,6 +6481,16 @@ "key":{"shape":"GenericString"}, "value":{"shape":"GenericString"} }, + "ContextKey":{ + "type":"string", + "max":128, + "min":1 + }, + "ContextValue":{ + "type":"string", + "max":256, + "min":0 + }, "ContextWords":{ "type":"list", "member":{"shape":"NameString"}, @@ -10475,8 +10490,12 @@ "FederationSourceRetryableException":{ "type":"structure", "members":{ - "Message":{"shape":"MessageString"} + "Message":{ + "shape":"MessageString", + "documentation":"

A message describing the problem.

" + } }, + "documentation":"

A federation source failed, but the operation may be retried.

", "exception":true }, "FieldName":{ @@ -12849,6 +12868,10 @@ "SupportedPermissionTypes" ], "members":{ + "Region":{ + "shape":"ValueString", + "documentation":"

Specified only if the base tables belong to a different Amazon Web Services Region.

" + }, "CatalogId":{ "shape":"CatalogIdString", "documentation":"

The catalog ID where the partition resides.

" @@ -12872,6 +12895,10 @@ "SupportedPermissionTypes":{ "shape":"PermissionTypeList", "documentation":"

(Required) A list of supported permission types.

" + }, + "QuerySessionContext":{ + "shape":"QuerySessionContext", + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" } } }, @@ -12901,6 +12928,10 @@ "SupportedPermissionTypes" ], "members":{ + "Region":{ + "shape":"ValueString", + "documentation":"

Specified only if the base tables belong to a different Amazon Web Services Region.

" + }, "CatalogId":{ "shape":"CatalogIdString", "documentation":"

The ID of the Data Catalog where the partitions in question reside. If none is provided, the AWS account ID is used by default.

" @@ -12936,6 +12967,10 @@ "MaxResults":{ "shape":"PageSize", "documentation":"

The maximum number of partitions to return in a single response.

" + }, + "QuerySessionContext":{ + "shape":"QuerySessionContext", + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" } } }, @@ -12961,6 +12996,10 @@ "SupportedPermissionTypes" ], "members":{ + "Region":{ + "shape":"ValueString", + "documentation":"

Specified only if the base tables belong to a different Amazon Web Services Region.

" + }, "CatalogId":{ "shape":"CatalogIdString", "documentation":"

The catalog ID where the table resides.

" @@ -12980,6 +13019,18 @@ "SupportedPermissionTypes":{ "shape":"PermissionTypeList", "documentation":"

(Required) A list of supported permission types.

" + }, + "SupportedDialect":{ + "shape":"SupportedDialect", + "documentation":"

A structure specifying the dialect and dialect version used by the query engine.

" + }, + "Permissions":{ + "shape":"PermissionList", + "documentation":"

The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

" + }, + "QuerySessionContext":{ + "shape":"QuerySessionContext", + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" } } }, @@ -13001,6 +13052,18 @@ "CellFilters":{ "shape":"ColumnRowFilterList", "documentation":"

A list of column row filters.

" + }, + "QueryAuthorizationId":{ + "shape":"HashString", + "documentation":"

A cryptographically generated query identifier generated by Glue or Lake Formation.

" + }, + "ResourceArn":{ + "shape":"ArnString", + "documentation":"

The resource ARN of the parent resource extracted from the request.

" + }, + "Permissions":{ + "shape":"PermissionList", + "documentation":"

The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

" } } }, @@ -16055,6 +16118,10 @@ "type":"integer", "box":true }, + "NullableString":{ + "type":"string", + "box":true + }, "OneInput":{ "type":"list", "member":{"shape":"NodeId"}, @@ -16930,6 +16997,32 @@ } } }, + "QuerySessionContext":{ + "type":"structure", + "members":{ + "QueryId":{ + "shape":"HashString", + "documentation":"

A unique identifier generated by the query engine for the query.

" + }, + "QueryStartTime":{ + "shape":"Timestamp", + "documentation":"

A timestamp provided by the query engine for when the query started.

" + }, + "ClusterId":{ + "shape":"NullableString", + "documentation":"

An identifier string for the consumer cluster.

" + }, + "QueryAuthorizationId":{ + "shape":"HashString", + "documentation":"

A cryptographically generated query identifier generated by Glue or Lake Formation.

" + }, + "AdditionalContext":{ + "shape":"AdditionalContextMap", + "documentation":"

An opaque string-string map passed by the query engine.

" + } + }, + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" + }, "QuoteChar":{ "type":"string", "enum":[ @@ -19942,6 +20035,20 @@ "type":"list", "member":{"shape":"GenericString"} }, + "SupportedDialect":{ + "type":"structure", + "members":{ + "Dialect":{ + "shape":"ViewDialect", + "documentation":"

The dialect of the query engine.

" + }, + "DialectVersion":{ + "shape":"ViewDialectVersionString", + "documentation":"

The version of the dialect of the query engine. For example, 3.0.0.

" + } + }, + "documentation":"

A structure specifying the dialect and dialect version used by the query engine.

" + }, "Table":{ "type":"structure", "required":["Name"], @@ -21920,6 +22027,19 @@ "min":1, "pattern":"[1-9][0-9]*|[1-9][0-9]*-[1-9][0-9]*" }, + "ViewDialect":{ + "type":"string", + "enum":[ + "REDSHIFT", + "ATHENA", + "SPARK" + ] + }, + "ViewDialectVersionString":{ + "type":"string", + "max":255, + "min":1 + }, "ViewTextString":{ "type":"string", "max":409600 diff --git a/tools/code-generation/api-descriptions/lakeformation-2017-03-31.normal.json b/tools/code-generation/api-descriptions/lakeformation-2017-03-31.normal.json index bc980a45999..bfa860eb20e 100644 --- a/tools/code-generation/api-descriptions/lakeformation-2017-03-31.normal.json +++ b/tools/code-generation/api-descriptions/lakeformation-2017-03-31.normal.json @@ -1014,6 +1014,11 @@ }, "documentation":"

A new object to add to the governed table.

" }, + "AdditionalContextMap":{ + "type":"map", + "key":{"shape":"ContextKey"}, + "value":{"shape":"ContextValue"} + }, "AllRowsWildcard":{ "type":"structure", "members":{ @@ -1307,6 +1312,16 @@ "documentation":"

Two processes are trying to modify a resource simultaneously.

", "exception":true }, + "ContextKey":{ + "type":"string", + "max":128, + "min":1 + }, + "ContextValue":{ + "type":"string", + "max":256, + "min":0 + }, "CreateDataCellsFilterRequest":{ "type":"structure", "required":["TableData"], @@ -1361,7 +1376,7 @@ }, "ExternalFiltering":{ "shape":"ExternalFilteringConfiguration", - "documentation":"

A list of the account IDs of Amazon Web Services accounts of third-party applications that are allowed to to access data managed by Lake Formation.

" + "documentation":"

A list of the account IDs of Amazon Web Services accounts of third-party applications that are allowed to access data managed by Lake Formation.

" } } }, @@ -2302,6 +2317,14 @@ "SupportedPermissionTypes":{ "shape":"PermissionTypeList", "documentation":"

A list of supported permission types for the table. Valid values are COLUMN_PERMISSION and CELL_FILTER_PERMISSION.

" + }, + "S3Path":{ + "shape":"PathString", + "documentation":"

The Amazon S3 path for the table.

" + }, + "QuerySessionContext":{ + "shape":"QuerySessionContext", + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" } } }, @@ -2323,6 +2346,10 @@ "Expiration":{ "shape":"ExpirationTimestamp", "documentation":"

The date and time when the temporary credentials expire.

" + }, + "VendedS3Path":{ + "shape":"PathStringList", + "documentation":"

The Amazon S3 path for the temporary credentials.

" } } }, @@ -2459,6 +2486,12 @@ "members":{ } }, + "HashString":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\t]*" + }, "IAMRoleArn":{ "type":"string", "pattern":"arn:aws:iam::[0-9]*:role/.*" @@ -2914,6 +2947,10 @@ "type":"boolean", "box":true }, + "NullableString":{ + "type":"string", + "box":true + }, "NumberOfBytes":{"type":"long"}, "NumberOfItems":{"type":"long"}, "NumberOfMilliseconds":{"type":"long"}, @@ -2991,6 +3028,11 @@ "type":"list", "member":{"shape":"PartitionObjects"} }, + "PathString":{"type":"string"}, + "PathStringList":{ + "type":"list", + "member":{"shape":"PathString"} + }, "Permission":{ "type":"string", "enum":[ @@ -3180,6 +3222,32 @@ "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\t]*" }, + "QuerySessionContext":{ + "type":"structure", + "members":{ + "QueryId":{ + "shape":"HashString", + "documentation":"

A unique identifier generated by the query engine for the query.

" + }, + "QueryStartTime":{ + "shape":"Timestamp", + "documentation":"

A timestamp provided by the query engine for when the query started.

" + }, + "ClusterId":{ + "shape":"NullableString", + "documentation":"

An identifier string for the consumer cluster.

" + }, + "QueryAuthorizationId":{ + "shape":"HashString", + "documentation":"

A cryptographically generated query identifier generated by Glue or Lake Formation.

" + }, + "AdditionalContext":{ + "shape":"AdditionalContextMap", + "documentation":"

An opaque string-string map passed by the query engine.

" + } + }, + "documentation":"

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

" + }, "QueryStateString":{ "type":"string", "enum":[ diff --git a/tools/code-generation/api-descriptions/mediaconnect-2018-11-14.normal.json b/tools/code-generation/api-descriptions/mediaconnect-2018-11-14.normal.json index 159adf0ed98..3bf4acb776f 100644 --- a/tools/code-generation/api-descriptions/mediaconnect-2018-11-14.normal.json +++ b/tools/code-generation/api-descriptions/mediaconnect-2018-11-14.normal.json @@ -677,6 +677,48 @@ ], "documentation": "Displays the details of a flow. The response includes the flow ARN, name, and Availability Zone, as well as details about the source, outputs, and entitlements." }, + "DescribeFlowSourceMetadata": { + "name": "DescribeFlowSourceMetadata", + "http": { + "method": "GET", + "requestUri": "/v1/flows/{flowArn}/source-metadata", + "responseCode": 200 + }, + "input": { + "shape": "DescribeFlowSourceMetadataRequest" + }, + "output": { + "shape": "DescribeFlowSourceMetadataResponse", + "documentation": "Flow source metadata successfully described." + }, + "errors": [ + { + "shape": "BadRequestException", + "documentation": "The request that you submitted is not valid." + }, + { + "shape": "InternalServerErrorException", + "documentation": "AWS Elemental MediaConnect can't fulfill your request because it encountered an unexpected condition." + }, + { + "shape": "ForbiddenException", + "documentation": "You don't have the required permissions to perform this operation." + }, + { + "shape": "NotFoundException", + "documentation": "AWS Elemental MediaConnect did not find the resource that you specified in the request." + }, + { + "shape": "ServiceUnavailableException", + "documentation": "AWS Elemental MediaConnect is currently unavailable. Try again later." + }, + { + "shape": "TooManyRequestsException", + "documentation": "You have exceeded the service request rate limit for your AWS Elemental MediaConnect account." + } + ], + "documentation": "Displays details of the flow's source stream. The response contains information about the contents of the stream and its programs." + }, "DescribeGateway": { "name": "DescribeGateway", "http": { @@ -3333,6 +3375,44 @@ } } }, + "DescribeFlowSourceMetadataRequest": { + "type": "structure", + "members": { + "FlowArn": { + "shape": "__string", + "location": "uri", + "locationName": "flowArn", + "documentation": "The Amazon Resource Name (ARN) of the flow." + } + }, + "required": [ + "FlowArn" + ] + }, + "DescribeFlowSourceMetadataResponse": { + "type": "structure", + "members": { + "FlowArn": { + "shape": "__string", + "locationName": "flowArn", + "documentation": "The ARN of the flow that DescribeFlowSourceMetadata was performed on." + }, + "Messages": { + "shape": "__listOfMessageDetail", + "locationName": "messages", + "documentation": "Provides a status code and message regarding issues found with the flow source metadata." + }, + "Timestamp": { + "shape": "__timestampIso8601", + "locationName": "timestamp", + "documentation": "The timestamp of the most recent change in metadata for this flow’s source." + }, + "TransportMediaInfo": { + "shape": "TransportMediaInfo", + "locationName": "transportMediaInfo" + } + } + }, "DescribeGatewayInstanceRequest": { "type": "structure", "members": { @@ -3893,6 +3973,26 @@ "httpStatusCode": 403 } }, + "FrameResolution": { + "type": "structure", + "members": { + "FrameHeight": { + "shape": "__integer", + "locationName": "frameHeight", + "documentation": "The number of pixels in the height of the video frame." + }, + "FrameWidth": { + "shape": "__integer", + "locationName": "frameWidth", + "documentation": "The number of pixels in the width of the video frame." + } + }, + "documentation": "The frame resolution used by the video stream.", + "required": [ + "FrameWidth", + "FrameHeight" + ] + }, "Gateway": { "type": "structure", "members": { @@ -6065,6 +6165,106 @@ "Protocol" ] }, + "TransportMediaInfo": { + "type": "structure", + "members": { + "Programs": { + "shape": "__listOfTransportStreamProgram", + "locationName": "programs", + "documentation": "The list of transport stream programs in the current flow's source." + } + }, + "documentation": "The metadata of the transport stream in the current flow's source.", + "required": [ + "Programs" + ] + }, + "TransportStream": { + "type": "structure", + "members": { + "Channels": { + "shape": "__integer", + "locationName": "channels", + "documentation": "The number of channels in the audio stream." + }, + "Codec": { + "shape": "__string", + "locationName": "codec", + "documentation": "The codec used by the stream." + }, + "FrameRate": { + "shape": "__string", + "locationName": "frameRate", + "documentation": "The frame rate used by the video stream." + }, + "FrameResolution": { + "shape": "FrameResolution", + "locationName": "frameResolution" + }, + "Pid": { + "shape": "__integer", + "locationName": "pid", + "documentation": "The Packet ID (PID) as it is reported in the Program Map Table." + }, + "SampleRate": { + "shape": "__integer", + "locationName": "sampleRate", + "documentation": "The sample rate used by the audio stream." + }, + "SampleSize": { + "shape": "__integer", + "locationName": "sampleSize", + "documentation": "The sample bit size used by the audio stream." + }, + "StreamType": { + "shape": "__string", + "locationName": "streamType", + "documentation": "The Stream Type as it is reported in the Program Map Table." + } + }, + "documentation": "The metadata of an elementary transport stream.", + "required": [ + "StreamType", + "Pid" + ] + }, + "TransportStreamProgram": { + "type": "structure", + "members": { + "PcrPid": { + "shape": "__integer", + "locationName": "pcrPid", + "documentation": "The Program Clock Reference (PCR) Packet ID (PID) as it is reported in the Program Association Table." + }, + "ProgramName": { + "shape": "__string", + "locationName": "programName", + "documentation": "The program name as it is reported in the Program Association Table." + }, + "ProgramNumber": { + "shape": "__integer", + "locationName": "programNumber", + "documentation": "The program number as it is reported in the Program Association Table." + }, + "ProgramPid": { + "shape": "__integer", + "locationName": "programPid", + "documentation": "The program Packet ID (PID) as it is reported in the Program Association Table." + }, + "Streams": { + "shape": "__listOfTransportStream", + "locationName": "streams", + "documentation": "The list of elementary transport streams in the program. The list includes video, audio, and data streams." + } + }, + "documentation": "The metadata of a single transport stream program.", + "required": [ + "ProgramPid", + "PcrPid", + "ProgramNumber", + "Streams" + ] + }, "UntagResourceRequest": { "type": "structure", "members": { @@ -7169,6 +7369,18 @@ "shape": "Source" } }, + "__listOfTransportStream": { + "type": "list", + "member": { + "shape": "TransportStream" + } + }, + "__listOfTransportStreamProgram": { + "type": "list", + "member": { + "shape": "TransportStreamProgram" + } + }, "__listOfVpcInterface": { "type": "list", "member": { diff --git a/tools/code-generation/api-descriptions/networkmonitor-2023-08-01.normal.json b/tools/code-generation/api-descriptions/networkmonitor-2023-08-01.normal.json new file mode 100644 index 00000000000..f826397d85e --- /dev/null +++ b/tools/code-generation/api-descriptions/networkmonitor-2023-08-01.normal.json @@ -0,0 +1,1219 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-08-01", + "endpointPrefix":"networkmonitor", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon CloudWatch Network Monitor", + "serviceId":"NetworkMonitor", + "signatureVersion":"v4", + "signingName":"networkmonitor", + "uid":"networkmonitor-2023-08-01" + }, + "operations":{ + "CreateMonitor":{ + "name":"CreateMonitor", + "http":{ + "method":"POST", + "requestUri":"/monitors", + "responseCode":200 + }, + "input":{"shape":"CreateMonitorInput"}, + "output":{"shape":"CreateMonitorOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

Creates a monitor between a source subnet and destination IP address. Within a monitor you'll create one or more probes that monitor network traffic between your source Amazon Web Services VPC subnets and your destination IP addresses. Each probe then aggregates and sends metrics to Amazon CloudWatch.

", + "idempotent":true + }, + "CreateProbe":{ + "name":"CreateProbe", + "http":{ + "method":"POST", + "requestUri":"/monitors/{monitorName}/probes", + "responseCode":200 + }, + "input":{"shape":"CreateProbeInput"}, + "output":{"shape":"CreateProbeOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

Create a probe within a monitor. Once you create a probe, and it begins monitoring your network traffic, you'll incur billing charges for that probe.

", + "idempotent":true + }, + "DeleteMonitor":{ + "name":"DeleteMonitor", + "http":{ + "method":"DELETE", + "requestUri":"/monitors/{monitorName}", + "responseCode":200 + }, + "input":{"shape":"DeleteMonitorInput"}, + "output":{"shape":"DeleteMonitorOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

Deletes a specified monitor.

", + "idempotent":true + }, + "DeleteProbe":{ + "name":"DeleteProbe", + "http":{ + "method":"DELETE", + "requestUri":"/monitors/{monitorName}/probes/{probeId}", + "responseCode":200 + }, + "input":{"shape":"DeleteProbeInput"}, + "output":{"shape":"DeleteProbeOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

Deletes the specified monitor. Once a probe is deleted you'll no longer incur any billing fees for that probe.

", + "idempotent":true + }, + "GetMonitor":{ + "name":"GetMonitor", + "http":{ + "method":"GET", + "requestUri":"/monitors/{monitorName}", + "responseCode":200 + }, + "input":{"shape":"GetMonitorInput"}, + "output":{"shape":"GetMonitorOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

Returns details about a specific monitor.

" + }, + "GetProbe":{ + "name":"GetProbe", + "http":{ + "method":"GET", + "requestUri":"/monitors/{monitorName}/probes/{probeId}", + "responseCode":200 + }, + "input":{"shape":"GetProbeInput"}, + "output":{"shape":"GetProbeOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

Returns the details about a probe. You'll need both the monitorName and probeId.

" + }, + "ListMonitors":{ + "name":"ListMonitors", + "http":{ + "method":"GET", + "requestUri":"/monitors", + "responseCode":200 + }, + "input":{"shape":"ListMonitorsInput"}, + "output":{"shape":"ListMonitorsOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

Returns a list of all of your monitors.

" + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceInput"}, + "output":{"shape":"ListTagsForResourceOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"} + ], + "documentation":"

Lists the tags assigned to this resource.

" + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceInput"}, + "output":{"shape":"TagResourceOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"} + ], + "documentation":"

Adds key-value pairs to a monitor or probe.

", + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceInput"}, + "output":{"shape":"UntagResourceOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"} + ], + "documentation":"

Removes a key-value pair from a monitor or probe.

", + "idempotent":true + }, + "UpdateMonitor":{ + "name":"UpdateMonitor", + "http":{ + "method":"PATCH", + "requestUri":"/monitors/{monitorName}", + "responseCode":200 + }, + "input":{"shape":"UpdateMonitorInput"}, + "output":{"shape":"UpdateMonitorOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

Updates the aggregationPeriod for a monitor. Monitors support an aggregationPeriod of either 30 or 60 seconds.

", + "idempotent":true + }, + "UpdateProbe":{ + "name":"UpdateProbe", + "http":{ + "method":"PATCH", + "requestUri":"/monitors/{monitorName}/probes/{probeId}", + "responseCode":200 + }, + "input":{"shape":"UpdateProbeInput"}, + "output":{"shape":"UpdateProbeOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

Updates a monitor probe. This action requires both the monitorName and probeId parameters. Run ListMonitors to get a list of monitor names. Run GetMonitor to get a list of probes and probe IDs.

", + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

You do not have sufficient access to perform this action.

", + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AddressFamily":{ + "type":"string", + "enum":[ + "IPV4", + "IPV6" + ] + }, + "AggregationPeriod":{ + "type":"long", + "box":true, + "min":30 + }, + "Arn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:.*" + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

This operation attempted to create a resource that already exists.

", + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CreateMonitorInput":{ + "type":"structure", + "required":["monitorName"], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name identifying the monitor. It can contain only letters, underscores (_), or dashes (-), and can be up to 255 characters.

" + }, + "probes":{ + "shape":"CreateMonitorProbeInputList", + "documentation":"

Displays a list of all of the probes created for a monitor.

" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The time, in seconds, that metrics are aggregated and sent to Amazon CloudWatch. Valid values are either 30 or 60.

" + }, + "clientToken":{ + "shape":"String", + "documentation":"

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", + "idempotencyToken":true + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs created and assigned to the monitor.

" + } + } + }, + "CreateMonitorOutput":{ + "type":"structure", + "required":[ + "monitorArn", + "monitorName", + "state" + ], + "members":{ + "monitorArn":{ + "shape":"MonitorArn", + "documentation":"

The ARN of the monitor.

" + }, + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor.

" + }, + "state":{ + "shape":"MonitorState", + "documentation":"

The state of the monitor.

" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The number of seconds that metrics are aggregated by and sent to Amazon CloudWatch. This will be either 30 or 60.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the monitor.

" + } + } + }, + "CreateMonitorProbeInput":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "sourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the subnet.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The destination IP address. This will be either IPV4 or IPV6.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The port associated with the destination. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The protocol used for the network traffic between the source and destination. This will be either TCP or ICMP.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The size of the packets sent between the source and destination. This will be a number between 56 and 8500.

" + }, + "probeTags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs created and assigned to the monitor.

" + } + }, + "documentation":"

Creates a monitor probe.

" + }, + "CreateMonitorProbeInputList":{ + "type":"list", + "member":{"shape":"CreateMonitorProbeInput"} + }, + "CreateProbeInput":{ + "type":"structure", + "required":[ + "monitorName", + "probe" + ], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor to associated with the probe. To get a list of available monitors, use ListMonitors.

", + "location":"uri", + "locationName":"monitorName" + }, + "probe":{ + "shape":"ProbeInput", + "documentation":"

Describes the details of an individual probe for a monitor.

" + }, + "clientToken":{ + "shape":"String", + "documentation":"

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", + "idempotencyToken":true + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs created and assigned to the probe.

" + } + } + }, + "CreateProbeOutput":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "probeId":{ + "shape":"ProbeId", + "documentation":"

The ID of the probe for which details are returned.

" + }, + "probeArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe.

" + }, + "sourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The destination IP address for the monitor. This will be either an IPv4 or IPv6 address.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The port associated with the destination. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The protocol used for the network traffic between the source and destination. This will be either TCP or ICMP.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The size of the packets sent between the source and destination. This will be a number between 56 and 8500.

" + }, + "addressFamily":{ + "shape":"AddressFamily", + "documentation":"

Indicates whether the IP address is IPV4 or IPV6.

" + }, + "vpcId":{ + "shape":"VpcId", + "documentation":"

The ID of the source VPC or subnet.

" + }, + "state":{ + "shape":"ProbeState", + "documentation":"

The state of the probe.

" + }, + "createdAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was created.

" + }, + "modifiedAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date when the probe was last modified.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the probe.

" + } + } + }, + "DeleteMonitorInput":{ + "type":"structure", + "required":["monitorName"], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor to delete. Use the ListMonitors action to get a list of your current monitors.

", + "location":"uri", + "locationName":"monitorName" + } + } + }, + "DeleteMonitorOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteProbeInput":{ + "type":"structure", + "required":[ + "monitorName", + "probeId" + ], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor to delete. For a list of the available monitors, use the ListMonitors action.

", + "location":"uri", + "locationName":"monitorName" + }, + "probeId":{ + "shape":"ProbeId", + "documentation":"

The ID of the probe to delete. Run GetMonitor to get a lst of all probes and probe IDs associated with the monitor.

", + "location":"uri", + "locationName":"probeId" + } + } + }, + "DeleteProbeOutput":{ + "type":"structure", + "members":{ + } + }, + "Destination":{ + "type":"string", + "max":255, + "min":1 + }, + "GetMonitorInput":{ + "type":"structure", + "required":["monitorName"], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor that details are returned for.

", + "location":"uri", + "locationName":"monitorName" + } + } + }, + "GetMonitorOutput":{ + "type":"structure", + "required":[ + "monitorArn", + "monitorName", + "state", + "aggregationPeriod", + "createdAt", + "modifiedAt" + ], + "members":{ + "monitorArn":{ + "shape":"MonitorArn", + "documentation":"

The ARN of the selected monitor.

" + }, + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor. To get a list of the current monitors and their names, use the ListMonitors action.

" + }, + "state":{ + "shape":"MonitorState", + "documentation":"

Returns a list of the state of each monitor.

" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The aggregation period for the specified monitor.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the monitor.

" + }, + "probes":{ + "shape":"ProbeList", + "documentation":"

The details about each probe associated with that monitor.

" + }, + "createdAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date when the monitor was created.

" + }, + "modifiedAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date when the monitor was last modified.

" + } + } + }, + "GetProbeInput":{ + "type":"structure", + "required":[ + "monitorName", + "probeId" + ], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor associated with the probe. Run ListMonitors to get a list of monitor names.

", + "location":"uri", + "locationName":"monitorName" + }, + "probeId":{ + "shape":"ProbeId", + "documentation":"

The ID of the probe to get information about. Run GetMonitor action to get a list of probes and probe IDs for the monitor.

", + "location":"uri", + "locationName":"probeId" + } + } + }, + "GetProbeOutput":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "probeId":{ + "shape":"ProbeId", + "documentation":"

The ID of the probe for which details are returned.

" + }, + "probeArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe.

" + }, + "sourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The destination IP address for the monitor. This will be either an IPv4 or IPv6 address.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The port associated with the destination. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The protocol used for the network traffic between the source and destination. This will be either TCP or ICMP.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The size of the packets sent between the source and destination. This will be a number between 56 and 8500.

" + }, + "addressFamily":{ + "shape":"AddressFamily", + "documentation":"

Indicates whether the IP address is IPV4 or IPV6.

" + }, + "vpcId":{ + "shape":"VpcId", + "documentation":"

The ID of the source VPC or subnet.

" + }, + "state":{ + "shape":"ProbeState", + "documentation":"

The state of the probe.

" + }, + "createdAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was created.

" + }, + "modifiedAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was last modified.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the probe.

" + } + } + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

The request processing has failed because of an unknown error, exception or failure.

", + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "Iso8601Timestamp":{"type":"timestamp"}, + "ListMonitorsInput":{ + "type":"structure", + "members":{ + "nextToken":{ + "shape":"PaginationToken", + "documentation":"

The token for the next page of results.

", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

", + "location":"querystring", + "locationName":"maxResults" + }, + "state":{ + "shape":"String", + "documentation":"

The list of all monitors and their states.

", + "location":"querystring", + "locationName":"state" + } + } + }, + "ListMonitorsOutput":{ + "type":"structure", + "required":["monitors"], + "members":{ + "monitors":{ + "shape":"MonitorList", + "documentation":"

Lists individual details about each of your monitors.

" + }, + "nextToken":{ + "shape":"String", + "documentation":"

The token for the next page of results.

" + } + } + }, + "ListTagsForResourceInput":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"Arn", + "documentation":"

The

", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceOutput":{ + "type":"structure", + "members":{ + "tags":{ + "shape":"TagMap", + "documentation":"

Lists the tags assigned to the resource.

" + } + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":25, + "min":1 + }, + "MonitorArn":{ + "type":"string", + "max":512, + "min":20, + "pattern":"arn:.*" + }, + "MonitorList":{ + "type":"list", + "member":{"shape":"MonitorSummary"} + }, + "MonitorState":{ + "type":"string", + "enum":[ + "PENDING", + "ACTIVE", + "INACTIVE", + "ERROR", + "DELETING" + ] + }, + "MonitorSummary":{ + "type":"structure", + "required":[ + "monitorArn", + "monitorName", + "state" + ], + "members":{ + "monitorArn":{ + "shape":"MonitorArn", + "documentation":"

The ARN of the monitor.

" + }, + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor.

" + }, + "state":{ + "shape":"MonitorState", + "documentation":"

The state of the monitor.

" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The time, in seconds, that metrics are collected and sent to Amazon CloudWatch. Valid values are either 30 or 60.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the monitor.

" + } + }, + "documentation":"

Displays summary information about a monitor.

" + }, + "PacketSize":{ + "type":"integer", + "box":true, + "max":8500, + "min":56 + }, + "PaginationToken":{ + "type":"string", + "max":4096, + "min":0 + }, + "Port":{ + "type":"integer", + "box":true, + "max":65536, + "min":0 + }, + "Probe":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "probeId":{ + "shape":"ProbeId", + "documentation":"

The ID of the probe.

" + }, + "probeArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe.

" + }, + "sourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the probe source subnet.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The destination for the probe. This should be either an IPV4 or IPV6.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The destination port for the probe. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The network protocol for the destination. This can be either TCP or ICMP. If the protocol is TCP, then port is also required.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The size of the packets traveling between the source and destination. This must be a number between 56 and

" + }, + "addressFamily":{ + "shape":"AddressFamily", + "documentation":"

The IPv4 or IPv6 address for the probe.

" + }, + "vpcId":{ + "shape":"VpcId", + "documentation":"

The ID of the source VPC subnet.

" + }, + "state":{ + "shape":"ProbeState", + "documentation":"

The state of the probe.

" + }, + "createdAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date the probe was created.

" + }, + "modifiedAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was last modified.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs created and assigned to the probe.

" + } + }, + "documentation":"

Describes information about a monitor probe.

" + }, + "ProbeId":{ + "type":"string", + "pattern":"probe-[a-z0-9A-Z-]{21,64}" + }, + "ProbeInput":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "sourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the subnet.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The destination IP address. This will be either IPV4 or IPV6.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The port associated with the destination. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The protocol used for the network traffic between the source and destination. This will be either TCP or ICMP.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The size of the packets sent between the source and destination. This will be a number between 56 and 8500.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs created and assigned to the monitor.

" + } + }, + "documentation":"

Defines a probe when creating a probe or monitor.

" + }, + "ProbeList":{ + "type":"list", + "member":{"shape":"Probe"} + }, + "ProbeState":{ + "type":"string", + "enum":[ + "PENDING", + "ACTIVE", + "INACTIVE", + "ERROR", + "DELETING", + "DELETED" + ] + }, + "Protocol":{ + "type":"string", + "enum":[ + "TCP", + "ICMP" + ] + }, + "ResourceName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

The specified resource does not exist.

", + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

This request exceeds a service quota.

", + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":200, + "min":0 + }, + "TagResourceInput":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the monitor or probe to tag.

", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs assigned to the monitor or probe.

" + } + } + }, + "TagResourceOutput":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

The request was denied due to request throttling

", + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "UntagResourceInput":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "documentation":"

The ARN of the monitor or probe that the tag should be removed from.

", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "documentation":"

The key-value pa

", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceOutput":{ + "type":"structure", + "members":{ + } + }, + "UpdateMonitorInput":{ + "type":"structure", + "required":[ + "monitorName", + "aggregationPeriod" + ], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor to update. Run ListMonitors to get a list of monitor names.

", + "location":"uri", + "locationName":"monitorName" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The aggregation time, in seconds, to change to. This must be either 30 or 60.

" + } + } + }, + "UpdateMonitorOutput":{ + "type":"structure", + "required":[ + "monitorArn", + "monitorName", + "state" + ], + "members":{ + "monitorArn":{ + "shape":"MonitorArn", + "documentation":"

The ARN of the monitor that was updated.

" + }, + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor that was updated.

" + }, + "state":{ + "shape":"MonitorState", + "documentation":"

The state of the updated monitor.

" + }, + "aggregationPeriod":{ + "shape":"AggregationPeriod", + "documentation":"

The changed aggregation period.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

The list of key-value pairs associated with the monitor.

" + } + } + }, + "UpdateProbeInput":{ + "type":"structure", + "required":[ + "monitorName", + "probeId" + ], + "members":{ + "monitorName":{ + "shape":"ResourceName", + "documentation":"

The name of the monitor that the probe was updated for.

", + "location":"uri", + "locationName":"monitorName" + }, + "probeId":{ + "shape":"ProbeId", + "documentation":"

Run GetMonitor to get a list of probes and probe IDs.

", + "location":"uri", + "locationName":"probeId" + }, + "state":{ + "shape":"ProbeState", + "documentation":"

The state of the probe update.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The updated IP address for the probe destination. This must be either an IPv4 or IPv6 address.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The updated port for the probe destination. This is required only if the protocol is TCP and must be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The updated network protocol for the destination. This can be either TCP or ICMP. If the protocol is TCP, then port is also required.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

he updated packets size for network traffic between the source and destination. This must be a number between 56 and 8500.

" + } + } + }, + "UpdateProbeOutput":{ + "type":"structure", + "required":[ + "sourceArn", + "destination", + "protocol" + ], + "members":{ + "probeId":{ + "shape":"ProbeId", + "documentation":"

The updated ID of the probe.

" + }, + "probeArn":{ + "shape":"Arn", + "documentation":"

The updated ARN of the probe.

" + }, + "sourceArn":{ + "shape":"Arn", + "documentation":"

The updated ARN of the source subnet.

" + }, + "destination":{ + "shape":"Destination", + "documentation":"

The updated destination IP address for the probe.

" + }, + "destinationPort":{ + "shape":"Port", + "documentation":"

The updated destination port. This will be a number between 1 and 65536.

" + }, + "protocol":{ + "shape":"Protocol", + "documentation":"

The updated protocol for the probe.

" + }, + "packetSize":{ + "shape":"PacketSize", + "documentation":"

The updated packet size for the probe.

" + }, + "addressFamily":{ + "shape":"AddressFamily", + "documentation":"

The updated IP address family. This will be either IPV4 or IPV6.

" + }, + "vpcId":{ + "shape":"VpcId", + "documentation":"

The updated ID of the source VPC subnet ID.

" + }, + "state":{ + "shape":"ProbeState", + "documentation":"

The state of the updated probe.

" + }, + "createdAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was created.

" + }, + "modifiedAt":{ + "shape":"Iso8601Timestamp", + "documentation":"

The time and date that the probe was last updated.

" + }, + "tags":{ + "shape":"TagMap", + "documentation":"

Update tags for a probe.

" + } + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "documentation":"

One of the parameters for the request is not valid.

", + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "VpcId":{ + "type":"string", + "pattern":"vpc-[a-zA-Z0-9]{8,32}" + } + }, + "documentation":"

Amazon CloudWatch Network Monitor is an Amazon Web Services active network monitoring service that identifies if a network issues exists within the Amazon Web Services network or your own company network. Within Network Monitor you'll choose the source VPCs and subnets from the Amazon Web Services network in which you operate and then you'll choose the destination IP addresses from your on-premises network. From these sources and destinations, Network Monitor creates a monitor containing all the possible source and destination combinations, each of which is called a probe, within a single monitor. These probes then monitor network traffic to help you identify where network issues might be affecting your traffic.

For more information, see Using Amazon CloudWatch Network Monitor in the Amazon CloudWatch User Guide.

" +} diff --git a/tools/code-generation/api-descriptions/omics-2022-11-28.normal.json b/tools/code-generation/api-descriptions/omics-2022-11-28.normal.json index a65120b11cc..31707df43e2 100644 --- a/tools/code-generation/api-descriptions/omics-2022-11-28.normal.json +++ b/tools/code-generation/api-descriptions/omics-2022-11-28.normal.json @@ -1049,7 +1049,7 @@ {"shape":"AccessDeniedException"}, {"shape":"RequestTimeoutException"} ], - "documentation":"

Lists all multipart read set uploads and their statuses.

", + "documentation":"

Lists multipart read set uploads and for in progress uploads. Once the upload is completed, a read set is created and the upload will no longer be returned in the respone.

", "endpoint":{"hostPrefix":"control-storage-"} }, "ListReadSetActivationJobs":{ @@ -2920,7 +2920,7 @@ }, "storageCapacity":{ "shape":"CreateWorkflowRequestStorageCapacityInteger", - "documentation":"

A storage capacity for the workflow in gigabytes.

" + "documentation":"

A storage capacity for the workflow in gibibytes.

" }, "tags":{ "shape":"TagMap", diff --git a/tools/code-generation/endpoints/mediaconnect-2018-11-14.endpoint-rule-set.json b/tools/code-generation/endpoints/mediaconnect-2018-11-14.endpoint-rule-set.json index be5c3411252..df2b9dcae72 100644 --- a/tools/code-generation/endpoints/mediaconnect-2018-11-14.endpoint-rule-set.json +++ b/tools/code-generation/endpoints/mediaconnect-2018-11-14.endpoint-rule-set.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff --git a/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-rule-set.json b/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-rule-set.json new file mode 100644 index 00000000000..9e27c8d314a --- /dev/null +++ b/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-rule-set.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "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.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://networkmonitor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://networkmonitor-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://networkmonitor.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://networkmonitor.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-tests.json b/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-tests.json new file mode 100644 index 00000000000..9031dc3e274 --- /dev/null +++ b/tools/code-generation/endpoints/networkmonitor-2023-08-01.endpoint-tests.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://networkmonitor.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-rule-set.json b/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-rule-set.json index 0cfc46a8094..c7e57c417fc 100644 --- a/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-rule-set.json +++ b/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-rule-set.json @@ -166,6 +166,56 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://secretsmanager-fips.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://secretsmanager-fips.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -270,6 +320,81 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://secretsmanager.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-cn", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://secretsmanager.{Region}.amazonaws.com.cn", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://secretsmanager.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { diff --git a/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-tests.json b/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-tests.json index f81865a4bb5..4d47e6fbd3c 100644 --- a/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-tests.json +++ b/tools/code-generation/endpoints/secretsmanager-2017-10-17.endpoint-tests.json @@ -355,7 +355,7 @@ "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://secretsmanager-fips.us-east-1.api.aws" + "url": "https://secretsmanager-fips.us-east-1.amazonaws.com" } }, "params": { @@ -368,7 +368,7 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://secretsmanager.us-east-1.api.aws" + "url": "https://secretsmanager.us-east-1.amazonaws.com" } }, "params": { @@ -433,7 +433,7 @@ "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://secretsmanager.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://secretsmanager.cn-north-1.amazonaws.com.cn" } }, "params": { @@ -498,7 +498,7 @@ "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://secretsmanager-fips.us-gov-east-1.api.aws" + "url": "https://secretsmanager-fips.us-gov-east-1.amazonaws.com" } }, "params": { @@ -511,7 +511,7 @@ "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://secretsmanager.us-gov-east-1.api.aws" + "url": "https://secretsmanager.us-gov-east-1.amazonaws.com" } }, "params": {