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/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace Pinpoint 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Provides information about the type and the names of attributes that were 29 * removed from all the endpoints that are associated with an 30 * application.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/AttributesResource">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_PINPOINT_API AttributesResource 35 { 36 public: 37 AttributesResource(); 38 AttributesResource(Aws::Utils::Json::JsonView jsonValue); 39 AttributesResource& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>The unique identifier for the application.</p> 45 */ GetApplicationId()46 inline const Aws::String& GetApplicationId() const{ return m_applicationId; } 47 48 /** 49 * <p>The unique identifier for the application.</p> 50 */ ApplicationIdHasBeenSet()51 inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; } 52 53 /** 54 * <p>The unique identifier for the application.</p> 55 */ SetApplicationId(const Aws::String & value)56 inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; } 57 58 /** 59 * <p>The unique identifier for the application.</p> 60 */ SetApplicationId(Aws::String && value)61 inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); } 62 63 /** 64 * <p>The unique identifier for the application.</p> 65 */ SetApplicationId(const char * value)66 inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); } 67 68 /** 69 * <p>The unique identifier for the application.</p> 70 */ WithApplicationId(const Aws::String & value)71 inline AttributesResource& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;} 72 73 /** 74 * <p>The unique identifier for the application.</p> 75 */ WithApplicationId(Aws::String && value)76 inline AttributesResource& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;} 77 78 /** 79 * <p>The unique identifier for the application.</p> 80 */ WithApplicationId(const char * value)81 inline AttributesResource& WithApplicationId(const char* value) { SetApplicationId(value); return *this;} 82 83 84 /** 85 * <p>The type of attribute or attributes that were removed from the endpoints. 86 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 87 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 88 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 89 * <li><p>endpoint-user-attributes - Custom attributes that describe 90 * users.</p></li></ul> 91 */ GetAttributeType()92 inline const Aws::String& GetAttributeType() const{ return m_attributeType; } 93 94 /** 95 * <p>The type of attribute or attributes that were removed from the endpoints. 96 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 97 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 98 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 99 * <li><p>endpoint-user-attributes - Custom attributes that describe 100 * users.</p></li></ul> 101 */ AttributeTypeHasBeenSet()102 inline bool AttributeTypeHasBeenSet() const { return m_attributeTypeHasBeenSet; } 103 104 /** 105 * <p>The type of attribute or attributes that were removed from the endpoints. 106 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 107 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 108 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 109 * <li><p>endpoint-user-attributes - Custom attributes that describe 110 * users.</p></li></ul> 111 */ SetAttributeType(const Aws::String & value)112 inline void SetAttributeType(const Aws::String& value) { m_attributeTypeHasBeenSet = true; m_attributeType = value; } 113 114 /** 115 * <p>The type of attribute or attributes that were removed from the endpoints. 116 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 117 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 118 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 119 * <li><p>endpoint-user-attributes - Custom attributes that describe 120 * users.</p></li></ul> 121 */ SetAttributeType(Aws::String && value)122 inline void SetAttributeType(Aws::String&& value) { m_attributeTypeHasBeenSet = true; m_attributeType = std::move(value); } 123 124 /** 125 * <p>The type of attribute or attributes that were removed from the endpoints. 126 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 127 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 128 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 129 * <li><p>endpoint-user-attributes - Custom attributes that describe 130 * users.</p></li></ul> 131 */ SetAttributeType(const char * value)132 inline void SetAttributeType(const char* value) { m_attributeTypeHasBeenSet = true; m_attributeType.assign(value); } 133 134 /** 135 * <p>The type of attribute or attributes that were removed from the endpoints. 136 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 137 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 138 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 139 * <li><p>endpoint-user-attributes - Custom attributes that describe 140 * users.</p></li></ul> 141 */ WithAttributeType(const Aws::String & value)142 inline AttributesResource& WithAttributeType(const Aws::String& value) { SetAttributeType(value); return *this;} 143 144 /** 145 * <p>The type of attribute or attributes that were removed from the endpoints. 146 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 147 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 148 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 149 * <li><p>endpoint-user-attributes - Custom attributes that describe 150 * users.</p></li></ul> 151 */ WithAttributeType(Aws::String && value)152 inline AttributesResource& WithAttributeType(Aws::String&& value) { SetAttributeType(std::move(value)); return *this;} 153 154 /** 155 * <p>The type of attribute or attributes that were removed from the endpoints. 156 * Valid values are:</p> <ul><li><p>endpoint-custom-attributes - Custom attributes 157 * that describe endpoints.</p></li> <li><p>endpoint-metric-attributes - Custom 158 * metrics that your app reports to Amazon Pinpoint for endpoints.</p></li> 159 * <li><p>endpoint-user-attributes - Custom attributes that describe 160 * users.</p></li></ul> 161 */ WithAttributeType(const char * value)162 inline AttributesResource& WithAttributeType(const char* value) { SetAttributeType(value); return *this;} 163 164 165 /** 166 * <p>An array that specifies the names of the attributes that were removed from 167 * the endpoints.</p> 168 */ GetAttributes()169 inline const Aws::Vector<Aws::String>& GetAttributes() const{ return m_attributes; } 170 171 /** 172 * <p>An array that specifies the names of the attributes that were removed from 173 * the endpoints.</p> 174 */ AttributesHasBeenSet()175 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; } 176 177 /** 178 * <p>An array that specifies the names of the attributes that were removed from 179 * the endpoints.</p> 180 */ SetAttributes(const Aws::Vector<Aws::String> & value)181 inline void SetAttributes(const Aws::Vector<Aws::String>& value) { m_attributesHasBeenSet = true; m_attributes = value; } 182 183 /** 184 * <p>An array that specifies the names of the attributes that were removed from 185 * the endpoints.</p> 186 */ SetAttributes(Aws::Vector<Aws::String> && value)187 inline void SetAttributes(Aws::Vector<Aws::String>&& value) { m_attributesHasBeenSet = true; m_attributes = std::move(value); } 188 189 /** 190 * <p>An array that specifies the names of the attributes that were removed from 191 * the endpoints.</p> 192 */ WithAttributes(const Aws::Vector<Aws::String> & value)193 inline AttributesResource& WithAttributes(const Aws::Vector<Aws::String>& value) { SetAttributes(value); return *this;} 194 195 /** 196 * <p>An array that specifies the names of the attributes that were removed from 197 * the endpoints.</p> 198 */ WithAttributes(Aws::Vector<Aws::String> && value)199 inline AttributesResource& WithAttributes(Aws::Vector<Aws::String>&& value) { SetAttributes(std::move(value)); return *this;} 200 201 /** 202 * <p>An array that specifies the names of the attributes that were removed from 203 * the endpoints.</p> 204 */ AddAttributes(const Aws::String & value)205 inline AttributesResource& AddAttributes(const Aws::String& value) { m_attributesHasBeenSet = true; m_attributes.push_back(value); return *this; } 206 207 /** 208 * <p>An array that specifies the names of the attributes that were removed from 209 * the endpoints.</p> 210 */ AddAttributes(Aws::String && value)211 inline AttributesResource& AddAttributes(Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.push_back(std::move(value)); return *this; } 212 213 /** 214 * <p>An array that specifies the names of the attributes that were removed from 215 * the endpoints.</p> 216 */ AddAttributes(const char * value)217 inline AttributesResource& AddAttributes(const char* value) { m_attributesHasBeenSet = true; m_attributes.push_back(value); return *this; } 218 219 private: 220 221 Aws::String m_applicationId; 222 bool m_applicationIdHasBeenSet; 223 224 Aws::String m_attributeType; 225 bool m_attributeTypeHasBeenSet; 226 227 Aws::Vector<Aws::String> m_attributes; 228 bool m_attributesHasBeenSet; 229 }; 230 231 } // namespace Model 232 } // namespace Pinpoint 233 } // namespace Aws 234