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/workspaces/WorkSpaces_EXPORTS.h> 8 #include <aws/workspaces/WorkSpacesRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace WorkSpaces 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_WORKSPACES_API DeleteTagsRequest : public WorkSpacesRequest 23 { 24 public: 25 DeleteTagsRequest(); 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 "DeleteTags"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>The identifier of the WorkSpaces resource. The supported resource types are 40 * WorkSpaces, registered directories, images, custom bundles, IP access control 41 * groups, and connection aliases.</p> 42 */ GetResourceId()43 inline const Aws::String& GetResourceId() const{ return m_resourceId; } 44 45 /** 46 * <p>The identifier of the WorkSpaces resource. The supported resource types are 47 * WorkSpaces, registered directories, images, custom bundles, IP access control 48 * groups, and connection aliases.</p> 49 */ ResourceIdHasBeenSet()50 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } 51 52 /** 53 * <p>The identifier of the WorkSpaces resource. The supported resource types are 54 * WorkSpaces, registered directories, images, custom bundles, IP access control 55 * groups, and connection aliases.</p> 56 */ SetResourceId(const Aws::String & value)57 inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } 58 59 /** 60 * <p>The identifier of the WorkSpaces resource. The supported resource types are 61 * WorkSpaces, registered directories, images, custom bundles, IP access control 62 * groups, and connection aliases.</p> 63 */ SetResourceId(Aws::String && value)64 inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } 65 66 /** 67 * <p>The identifier of the WorkSpaces resource. The supported resource types are 68 * WorkSpaces, registered directories, images, custom bundles, IP access control 69 * groups, and connection aliases.</p> 70 */ SetResourceId(const char * value)71 inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } 72 73 /** 74 * <p>The identifier of the WorkSpaces resource. The supported resource types are 75 * WorkSpaces, registered directories, images, custom bundles, IP access control 76 * groups, and connection aliases.</p> 77 */ WithResourceId(const Aws::String & value)78 inline DeleteTagsRequest& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} 79 80 /** 81 * <p>The identifier of the WorkSpaces resource. The supported resource types are 82 * WorkSpaces, registered directories, images, custom bundles, IP access control 83 * groups, and connection aliases.</p> 84 */ WithResourceId(Aws::String && value)85 inline DeleteTagsRequest& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} 86 87 /** 88 * <p>The identifier of the WorkSpaces resource. The supported resource types are 89 * WorkSpaces, registered directories, images, custom bundles, IP access control 90 * groups, and connection aliases.</p> 91 */ WithResourceId(const char * value)92 inline DeleteTagsRequest& WithResourceId(const char* value) { SetResourceId(value); return *this;} 93 94 95 /** 96 * <p>The tag keys.</p> 97 */ GetTagKeys()98 inline const Aws::Vector<Aws::String>& GetTagKeys() const{ return m_tagKeys; } 99 100 /** 101 * <p>The tag keys.</p> 102 */ TagKeysHasBeenSet()103 inline bool TagKeysHasBeenSet() const { return m_tagKeysHasBeenSet; } 104 105 /** 106 * <p>The tag keys.</p> 107 */ SetTagKeys(const Aws::Vector<Aws::String> & value)108 inline void SetTagKeys(const Aws::Vector<Aws::String>& value) { m_tagKeysHasBeenSet = true; m_tagKeys = value; } 109 110 /** 111 * <p>The tag keys.</p> 112 */ SetTagKeys(Aws::Vector<Aws::String> && value)113 inline void SetTagKeys(Aws::Vector<Aws::String>&& value) { m_tagKeysHasBeenSet = true; m_tagKeys = std::move(value); } 114 115 /** 116 * <p>The tag keys.</p> 117 */ WithTagKeys(const Aws::Vector<Aws::String> & value)118 inline DeleteTagsRequest& WithTagKeys(const Aws::Vector<Aws::String>& value) { SetTagKeys(value); return *this;} 119 120 /** 121 * <p>The tag keys.</p> 122 */ WithTagKeys(Aws::Vector<Aws::String> && value)123 inline DeleteTagsRequest& WithTagKeys(Aws::Vector<Aws::String>&& value) { SetTagKeys(std::move(value)); return *this;} 124 125 /** 126 * <p>The tag keys.</p> 127 */ AddTagKeys(const Aws::String & value)128 inline DeleteTagsRequest& AddTagKeys(const Aws::String& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } 129 130 /** 131 * <p>The tag keys.</p> 132 */ AddTagKeys(Aws::String && value)133 inline DeleteTagsRequest& AddTagKeys(Aws::String&& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(std::move(value)); return *this; } 134 135 /** 136 * <p>The tag keys.</p> 137 */ AddTagKeys(const char * value)138 inline DeleteTagsRequest& AddTagKeys(const char* value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } 139 140 private: 141 142 Aws::String m_resourceId; 143 bool m_resourceIdHasBeenSet; 144 145 Aws::Vector<Aws::String> m_tagKeys; 146 bool m_tagKeysHasBeenSet; 147 }; 148 149 } // namespace Model 150 } // namespace WorkSpaces 151 } // namespace Aws 152