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/iotanalytics/IoTAnalytics_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace IoTAnalytics 22 { 23 namespace Model 24 { 25 26 /** 27 * <p> A partition dimension defined by an attribute. </p><p><h3>See Also:</h3> 28 * <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/iotanalytics-2017-11-27/Partition">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_IOTANALYTICS_API Partition 33 { 34 public: 35 Partition(); 36 Partition(Aws::Utils::Json::JsonView jsonValue); 37 Partition& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p> The name of the attribute that defines a partition dimension. </p> 43 */ GetAttributeName()44 inline const Aws::String& GetAttributeName() const{ return m_attributeName; } 45 46 /** 47 * <p> The name of the attribute that defines a partition dimension. </p> 48 */ AttributeNameHasBeenSet()49 inline bool AttributeNameHasBeenSet() const { return m_attributeNameHasBeenSet; } 50 51 /** 52 * <p> The name of the attribute that defines a partition dimension. </p> 53 */ SetAttributeName(const Aws::String & value)54 inline void SetAttributeName(const Aws::String& value) { m_attributeNameHasBeenSet = true; m_attributeName = value; } 55 56 /** 57 * <p> The name of the attribute that defines a partition dimension. </p> 58 */ SetAttributeName(Aws::String && value)59 inline void SetAttributeName(Aws::String&& value) { m_attributeNameHasBeenSet = true; m_attributeName = std::move(value); } 60 61 /** 62 * <p> The name of the attribute that defines a partition dimension. </p> 63 */ SetAttributeName(const char * value)64 inline void SetAttributeName(const char* value) { m_attributeNameHasBeenSet = true; m_attributeName.assign(value); } 65 66 /** 67 * <p> The name of the attribute that defines a partition dimension. </p> 68 */ WithAttributeName(const Aws::String & value)69 inline Partition& WithAttributeName(const Aws::String& value) { SetAttributeName(value); return *this;} 70 71 /** 72 * <p> The name of the attribute that defines a partition dimension. </p> 73 */ WithAttributeName(Aws::String && value)74 inline Partition& WithAttributeName(Aws::String&& value) { SetAttributeName(std::move(value)); return *this;} 75 76 /** 77 * <p> The name of the attribute that defines a partition dimension. </p> 78 */ WithAttributeName(const char * value)79 inline Partition& WithAttributeName(const char* value) { SetAttributeName(value); return *this;} 80 81 private: 82 83 Aws::String m_attributeName; 84 bool m_attributeNameHasBeenSet; 85 }; 86 87 } // namespace Model 88 } // namespace IoTAnalytics 89 } // namespace Aws 90