1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/mq/MQ_EXPORTS.h> 8 #include <aws/mq/MQRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSMap.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace MQ 16 { 17 namespace Model 18 { 19 20 /** 21 * <p>A map of the key-value pairs for the resource tag.</p><p><h3>See Also:</h3> 22 * <a 23 * href="http://docs.aws.amazon.com/goto/WebAPI/mq-2017-11-27/CreateTagsRequest">AWS 24 * API Reference</a></p> 25 */ 26 class AWS_MQ_API CreateTagsRequest : public MQRequest 27 { 28 public: 29 CreateTagsRequest(); 30 31 // Service request name is the Operation name which will send this request out, 32 // each operation should has unique request name, so that we can get operation's name from this request. 33 // Note: this is not true for response, multiple operations may have the same response name, 34 // so we can not get operation's name from response. GetServiceRequestName()35 inline virtual const char* GetServiceRequestName() const override { return "CreateTags"; } 36 37 Aws::String SerializePayload() const override; 38 39 40 /** 41 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 42 */ GetResourceArn()43 inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } 44 45 /** 46 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 47 */ ResourceArnHasBeenSet()48 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } 49 50 /** 51 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 52 */ SetResourceArn(const Aws::String & value)53 inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } 54 55 /** 56 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 57 */ SetResourceArn(Aws::String && value)58 inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } 59 60 /** 61 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 62 */ SetResourceArn(const char * value)63 inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } 64 65 /** 66 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 67 */ WithResourceArn(const Aws::String & value)68 inline CreateTagsRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} 69 70 /** 71 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 72 */ WithResourceArn(Aws::String && value)73 inline CreateTagsRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} 74 75 /** 76 * <p>The Amazon Resource Name (ARN) of the resource tag.</p> 77 */ WithResourceArn(const char * value)78 inline CreateTagsRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} 79 80 81 /** 82 * <p>The key-value pair for the resource tag.</p> 83 */ GetTags()84 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; } 85 86 /** 87 * <p>The key-value pair for the resource tag.</p> 88 */ TagsHasBeenSet()89 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 90 91 /** 92 * <p>The key-value pair for the resource tag.</p> 93 */ SetTags(const Aws::Map<Aws::String,Aws::String> & value)94 inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; } 95 96 /** 97 * <p>The key-value pair for the resource tag.</p> 98 */ SetTags(Aws::Map<Aws::String,Aws::String> && value)99 inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 100 101 /** 102 * <p>The key-value pair for the resource tag.</p> 103 */ WithTags(const Aws::Map<Aws::String,Aws::String> & value)104 inline CreateTagsRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;} 105 106 /** 107 * <p>The key-value pair for the resource tag.</p> 108 */ WithTags(Aws::Map<Aws::String,Aws::String> && value)109 inline CreateTagsRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;} 110 111 /** 112 * <p>The key-value pair for the resource tag.</p> 113 */ AddTags(const Aws::String & key,const Aws::String & value)114 inline CreateTagsRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 115 116 /** 117 * <p>The key-value pair for the resource tag.</p> 118 */ AddTags(Aws::String && key,const Aws::String & value)119 inline CreateTagsRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 120 121 /** 122 * <p>The key-value pair for the resource tag.</p> 123 */ AddTags(const Aws::String & key,Aws::String && value)124 inline CreateTagsRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 125 126 /** 127 * <p>The key-value pair for the resource tag.</p> 128 */ AddTags(Aws::String && key,Aws::String && value)129 inline CreateTagsRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } 130 131 /** 132 * <p>The key-value pair for the resource tag.</p> 133 */ AddTags(const char * key,Aws::String && value)134 inline CreateTagsRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 135 136 /** 137 * <p>The key-value pair for the resource tag.</p> 138 */ AddTags(Aws::String && key,const char * value)139 inline CreateTagsRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 140 141 /** 142 * <p>The key-value pair for the resource tag.</p> 143 */ AddTags(const char * key,const char * value)144 inline CreateTagsRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 145 146 private: 147 148 Aws::String m_resourceArn; 149 bool m_resourceArnHasBeenSet; 150 151 Aws::Map<Aws::String, Aws::String> m_tags; 152 bool m_tagsHasBeenSet; 153 }; 154 155 } // namespace Model 156 } // namespace MQ 157 } // namespace Aws 158