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/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h> 8 #include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2Request.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace ElasticLoadBalancingv2 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_ELASTICLOADBALANCINGV2_API RemoveTagsRequest : public ElasticLoadBalancingv2Request 23 { 24 public: 25 RemoveTagsRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "RemoveTags"; } 32 33 Aws::String SerializePayload() const override; 34 35 protected: 36 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 37 38 public: 39 40 /** 41 * <p>The Amazon Resource Name (ARN) of the resource.</p> 42 */ GetResourceArns()43 inline const Aws::Vector<Aws::String>& GetResourceArns() const{ return m_resourceArns; } 44 45 /** 46 * <p>The Amazon Resource Name (ARN) of the resource.</p> 47 */ ResourceArnsHasBeenSet()48 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; } 49 50 /** 51 * <p>The Amazon Resource Name (ARN) of the resource.</p> 52 */ SetResourceArns(const Aws::Vector<Aws::String> & value)53 inline void SetResourceArns(const Aws::Vector<Aws::String>& value) { m_resourceArnsHasBeenSet = true; m_resourceArns = value; } 54 55 /** 56 * <p>The Amazon Resource Name (ARN) of the resource.</p> 57 */ SetResourceArns(Aws::Vector<Aws::String> && value)58 inline void SetResourceArns(Aws::Vector<Aws::String>&& value) { m_resourceArnsHasBeenSet = true; m_resourceArns = std::move(value); } 59 60 /** 61 * <p>The Amazon Resource Name (ARN) of the resource.</p> 62 */ WithResourceArns(const Aws::Vector<Aws::String> & value)63 inline RemoveTagsRequest& WithResourceArns(const Aws::Vector<Aws::String>& value) { SetResourceArns(value); return *this;} 64 65 /** 66 * <p>The Amazon Resource Name (ARN) of the resource.</p> 67 */ WithResourceArns(Aws::Vector<Aws::String> && value)68 inline RemoveTagsRequest& WithResourceArns(Aws::Vector<Aws::String>&& value) { SetResourceArns(std::move(value)); return *this;} 69 70 /** 71 * <p>The Amazon Resource Name (ARN) of the resource.</p> 72 */ AddResourceArns(const Aws::String & value)73 inline RemoveTagsRequest& AddResourceArns(const Aws::String& value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(value); return *this; } 74 75 /** 76 * <p>The Amazon Resource Name (ARN) of the resource.</p> 77 */ AddResourceArns(Aws::String && value)78 inline RemoveTagsRequest& AddResourceArns(Aws::String&& value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(std::move(value)); return *this; } 79 80 /** 81 * <p>The Amazon Resource Name (ARN) of the resource.</p> 82 */ AddResourceArns(const char * value)83 inline RemoveTagsRequest& AddResourceArns(const char* value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(value); return *this; } 84 85 86 /** 87 * <p>The tag keys for the tags to remove.</p> 88 */ GetTagKeys()89 inline const Aws::Vector<Aws::String>& GetTagKeys() const{ return m_tagKeys; } 90 91 /** 92 * <p>The tag keys for the tags to remove.</p> 93 */ TagKeysHasBeenSet()94 inline bool TagKeysHasBeenSet() const { return m_tagKeysHasBeenSet; } 95 96 /** 97 * <p>The tag keys for the tags to remove.</p> 98 */ SetTagKeys(const Aws::Vector<Aws::String> & value)99 inline void SetTagKeys(const Aws::Vector<Aws::String>& value) { m_tagKeysHasBeenSet = true; m_tagKeys = value; } 100 101 /** 102 * <p>The tag keys for the tags to remove.</p> 103 */ SetTagKeys(Aws::Vector<Aws::String> && value)104 inline void SetTagKeys(Aws::Vector<Aws::String>&& value) { m_tagKeysHasBeenSet = true; m_tagKeys = std::move(value); } 105 106 /** 107 * <p>The tag keys for the tags to remove.</p> 108 */ WithTagKeys(const Aws::Vector<Aws::String> & value)109 inline RemoveTagsRequest& WithTagKeys(const Aws::Vector<Aws::String>& value) { SetTagKeys(value); return *this;} 110 111 /** 112 * <p>The tag keys for the tags to remove.</p> 113 */ WithTagKeys(Aws::Vector<Aws::String> && value)114 inline RemoveTagsRequest& WithTagKeys(Aws::Vector<Aws::String>&& value) { SetTagKeys(std::move(value)); return *this;} 115 116 /** 117 * <p>The tag keys for the tags to remove.</p> 118 */ AddTagKeys(const Aws::String & value)119 inline RemoveTagsRequest& AddTagKeys(const Aws::String& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } 120 121 /** 122 * <p>The tag keys for the tags to remove.</p> 123 */ AddTagKeys(Aws::String && value)124 inline RemoveTagsRequest& AddTagKeys(Aws::String&& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(std::move(value)); return *this; } 125 126 /** 127 * <p>The tag keys for the tags to remove.</p> 128 */ AddTagKeys(const char * value)129 inline RemoveTagsRequest& AddTagKeys(const char* value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } 130 131 private: 132 133 Aws::Vector<Aws::String> m_resourceArns; 134 bool m_resourceArnsHasBeenSet; 135 136 Aws::Vector<Aws::String> m_tagKeys; 137 bool m_tagKeysHasBeenSet; 138 }; 139 140 } // namespace Model 141 } // namespace ElasticLoadBalancingv2 142 } // namespace Aws 143