/** * 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 NetworkManager { namespace Model { /** */ class UpdateNetworkResourceMetadataRequest : public NetworkManagerRequest { public: AWS_NETWORKMANAGER_API UpdateNetworkResourceMetadataRequest(); // 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 "UpdateNetworkResourceMetadata"; } AWS_NETWORKMANAGER_API Aws::String SerializePayload() const override; /** *

The ID of the global network.

*/ inline const Aws::String& GetGlobalNetworkId() const{ return m_globalNetworkId; } /** *

The ID of the global network.

*/ inline bool GlobalNetworkIdHasBeenSet() const { return m_globalNetworkIdHasBeenSet; } /** *

The ID of the global network.

*/ inline void SetGlobalNetworkId(const Aws::String& value) { m_globalNetworkIdHasBeenSet = true; m_globalNetworkId = value; } /** *

The ID of the global network.

*/ inline void SetGlobalNetworkId(Aws::String&& value) { m_globalNetworkIdHasBeenSet = true; m_globalNetworkId = std::move(value); } /** *

The ID of the global network.

*/ inline void SetGlobalNetworkId(const char* value) { m_globalNetworkIdHasBeenSet = true; m_globalNetworkId.assign(value); } /** *

The ID of the global network.

*/ inline UpdateNetworkResourceMetadataRequest& WithGlobalNetworkId(const Aws::String& value) { SetGlobalNetworkId(value); return *this;} /** *

The ID of the global network.

*/ inline UpdateNetworkResourceMetadataRequest& WithGlobalNetworkId(Aws::String&& value) { SetGlobalNetworkId(std::move(value)); return *this;} /** *

The ID of the global network.

*/ inline UpdateNetworkResourceMetadataRequest& WithGlobalNetworkId(const char* value) { SetGlobalNetworkId(value); return *this;} /** *

The ARN of the resource.

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

The ARN of the resource.

*/ inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } /** *

The ARN of the resource.

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

The ARN of the resource.

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

The ARN of the resource.

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

The ARN of the resource.

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

The ARN of the resource.

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

The ARN of the resource.

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

The resource metadata.

*/ inline const Aws::Map& GetMetadata() const{ return m_metadata; } /** *

The resource metadata.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

The resource metadata.

*/ inline void SetMetadata(const Aws::Map& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

The resource metadata.

*/ inline void SetMetadata(Aws::Map&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& WithMetadata(const Aws::Map& value) { SetMetadata(value); return *this;} /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& WithMetadata(Aws::Map&& value) { SetMetadata(std::move(value)); return *this;} /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(const Aws::String& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(Aws::String&& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(const Aws::String& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(Aws::String&& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), std::move(value)); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(const char* key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(Aws::String&& key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } /** *

The resource metadata.

*/ inline UpdateNetworkResourceMetadataRequest& AddMetadata(const char* key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } private: Aws::String m_globalNetworkId; bool m_globalNetworkIdHasBeenSet = false; Aws::String m_resourceArn; bool m_resourceArnHasBeenSet = false; Aws::Map m_metadata; bool m_metadataHasBeenSet = false; }; } // namespace Model } // namespace NetworkManager } // namespace Aws