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/pinpoint/Pinpoint_EXPORTS.h> 8 #include <aws/pinpoint/PinpointRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/pinpoint/model/TagsModel.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Pinpoint 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_PINPOINT_API TagResourceRequest : public PinpointRequest 23 { 24 public: 25 TagResourceRequest(); 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 "TagResource"; } 32 33 Aws::String SerializePayload() const override; 34 35 36 /** 37 * <p>The Amazon Resource Name (ARN) of the resource.</p> 38 */ GetResourceArn()39 inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } 40 41 /** 42 * <p>The Amazon Resource Name (ARN) of the resource.</p> 43 */ ResourceArnHasBeenSet()44 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } 45 46 /** 47 * <p>The Amazon Resource Name (ARN) of the resource.</p> 48 */ SetResourceArn(const Aws::String & value)49 inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } 50 51 /** 52 * <p>The Amazon Resource Name (ARN) of the resource.</p> 53 */ SetResourceArn(Aws::String && value)54 inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } 55 56 /** 57 * <p>The Amazon Resource Name (ARN) of the resource.</p> 58 */ SetResourceArn(const char * value)59 inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } 60 61 /** 62 * <p>The Amazon Resource Name (ARN) of the resource.</p> 63 */ WithResourceArn(const Aws::String & value)64 inline TagResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} 65 66 /** 67 * <p>The Amazon Resource Name (ARN) of the resource.</p> 68 */ WithResourceArn(Aws::String && value)69 inline TagResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} 70 71 /** 72 * <p>The Amazon Resource Name (ARN) of the resource.</p> 73 */ WithResourceArn(const char * value)74 inline TagResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} 75 76 77 GetTagsModel()78 inline const TagsModel& GetTagsModel() const{ return m_tagsModel; } 79 80 TagsModelHasBeenSet()81 inline bool TagsModelHasBeenSet() const { return m_tagsModelHasBeenSet; } 82 83 SetTagsModel(const TagsModel & value)84 inline void SetTagsModel(const TagsModel& value) { m_tagsModelHasBeenSet = true; m_tagsModel = value; } 85 86 SetTagsModel(TagsModel && value)87 inline void SetTagsModel(TagsModel&& value) { m_tagsModelHasBeenSet = true; m_tagsModel = std::move(value); } 88 89 WithTagsModel(const TagsModel & value)90 inline TagResourceRequest& WithTagsModel(const TagsModel& value) { SetTagsModel(value); return *this;} 91 92 WithTagsModel(TagsModel && value)93 inline TagResourceRequest& WithTagsModel(TagsModel&& value) { SetTagsModel(std::move(value)); return *this;} 94 95 private: 96 97 Aws::String m_resourceArn; 98 bool m_resourceArnHasBeenSet; 99 100 TagsModel m_tagsModel; 101 bool m_tagsModelHasBeenSet; 102 }; 103 104 } // namespace Model 105 } // namespace Pinpoint 106 } // namespace Aws 107