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/rds/RDS_EXPORTS.h> 8 #include <aws/rds/RDSRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/rds/model/Filter.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace RDS 17 { 18 namespace Model 19 { 20 21 /** 22 * <p/><p><h3>See Also:</h3> <a 23 * href="http://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ListTagsForResourceMessage">AWS 24 * API Reference</a></p> 25 */ 26 class AWS_RDS_API ListTagsForResourceRequest : public RDSRequest 27 { 28 public: 29 ListTagsForResourceRequest(); 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 "ListTagsForResource"; } 36 37 Aws::String SerializePayload() const override; 38 39 protected: 40 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 41 42 public: 43 44 /** 45 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 46 * Resource Name (ARN). For information about creating an ARN, see <a 47 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 48 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 49 */ GetResourceName()50 inline const Aws::String& GetResourceName() const{ return m_resourceName; } 51 52 /** 53 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 54 * Resource Name (ARN). For information about creating an ARN, see <a 55 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 56 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 57 */ ResourceNameHasBeenSet()58 inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; } 59 60 /** 61 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 62 * Resource Name (ARN). For information about creating an ARN, see <a 63 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 64 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 65 */ SetResourceName(const Aws::String & value)66 inline void SetResourceName(const Aws::String& value) { m_resourceNameHasBeenSet = true; m_resourceName = value; } 67 68 /** 69 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 70 * Resource Name (ARN). For information about creating an ARN, see <a 71 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 72 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 73 */ SetResourceName(Aws::String && value)74 inline void SetResourceName(Aws::String&& value) { m_resourceNameHasBeenSet = true; m_resourceName = std::move(value); } 75 76 /** 77 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 78 * Resource Name (ARN). For information about creating an ARN, see <a 79 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 80 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 81 */ SetResourceName(const char * value)82 inline void SetResourceName(const char* value) { m_resourceNameHasBeenSet = true; m_resourceName.assign(value); } 83 84 /** 85 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 86 * Resource Name (ARN). For information about creating an ARN, see <a 87 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 88 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 89 */ WithResourceName(const Aws::String & value)90 inline ListTagsForResourceRequest& WithResourceName(const Aws::String& value) { SetResourceName(value); return *this;} 91 92 /** 93 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 94 * Resource Name (ARN). For information about creating an ARN, see <a 95 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 96 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 97 */ WithResourceName(Aws::String && value)98 inline ListTagsForResourceRequest& WithResourceName(Aws::String&& value) { SetResourceName(std::move(value)); return *this;} 99 100 /** 101 * <p>The Amazon RDS resource with tags to be listed. This value is an Amazon 102 * Resource Name (ARN). For information about creating an ARN, see <a 103 * href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> 104 * Constructing an ARN for Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> 105 */ WithResourceName(const char * value)106 inline ListTagsForResourceRequest& WithResourceName(const char* value) { SetResourceName(value); return *this;} 107 108 109 /** 110 * <p>This parameter isn't currently supported.</p> 111 */ GetFilters()112 inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; } 113 114 /** 115 * <p>This parameter isn't currently supported.</p> 116 */ FiltersHasBeenSet()117 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } 118 119 /** 120 * <p>This parameter isn't currently supported.</p> 121 */ SetFilters(const Aws::Vector<Filter> & value)122 inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; } 123 124 /** 125 * <p>This parameter isn't currently supported.</p> 126 */ SetFilters(Aws::Vector<Filter> && value)127 inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } 128 129 /** 130 * <p>This parameter isn't currently supported.</p> 131 */ WithFilters(const Aws::Vector<Filter> & value)132 inline ListTagsForResourceRequest& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;} 133 134 /** 135 * <p>This parameter isn't currently supported.</p> 136 */ WithFilters(Aws::Vector<Filter> && value)137 inline ListTagsForResourceRequest& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(std::move(value)); return *this;} 138 139 /** 140 * <p>This parameter isn't currently supported.</p> 141 */ AddFilters(const Filter & value)142 inline ListTagsForResourceRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; } 143 144 /** 145 * <p>This parameter isn't currently supported.</p> 146 */ AddFilters(Filter && value)147 inline ListTagsForResourceRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(std::move(value)); return *this; } 148 149 private: 150 151 Aws::String m_resourceName; 152 bool m_resourceNameHasBeenSet; 153 154 Aws::Vector<Filter> m_filters; 155 bool m_filtersHasBeenSet; 156 }; 157 158 } // namespace Model 159 } // namespace RDS 160 } // namespace Aws 161