AWS SDK for C++

AWS SDK for C++ Version 1.11.924

Loading...
Searching...
No Matches
FacetAttribute.h
1
6#pragma once
7#include <aws/clouddirectory/CloudDirectory_EXPORTS.h>
8#include <aws/clouddirectory/model/FacetAttributeDefinition.h>
9#include <aws/clouddirectory/model/FacetAttributeReference.h>
10#include <aws/clouddirectory/model/RequiredAttributeBehavior.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace CloudDirectory {
23namespace Model {
24
32 public:
33 AWS_CLOUDDIRECTORY_API FacetAttribute() = default;
34 AWS_CLOUDDIRECTORY_API FacetAttribute(Aws::Utils::Json::JsonView jsonValue);
35 AWS_CLOUDDIRECTORY_API FacetAttribute& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CLOUDDIRECTORY_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetName() const { return m_name; }
43 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
44 template <typename NameT = Aws::String>
45 void SetName(NameT&& value) {
46 m_nameHasBeenSet = true;
47 m_name = std::forward<NameT>(value);
48 }
49 template <typename NameT = Aws::String>
50 FacetAttribute& WithName(NameT&& value) {
51 SetName(std::forward<NameT>(value));
52 return *this;
53 }
55
57
63 inline const FacetAttributeDefinition& GetAttributeDefinition() const { return m_attributeDefinition; }
64 inline bool AttributeDefinitionHasBeenSet() const { return m_attributeDefinitionHasBeenSet; }
65 template <typename AttributeDefinitionT = FacetAttributeDefinition>
66 void SetAttributeDefinition(AttributeDefinitionT&& value) {
67 m_attributeDefinitionHasBeenSet = true;
68 m_attributeDefinition = std::forward<AttributeDefinitionT>(value);
69 }
70 template <typename AttributeDefinitionT = FacetAttributeDefinition>
71 FacetAttribute& WithAttributeDefinition(AttributeDefinitionT&& value) {
72 SetAttributeDefinition(std::forward<AttributeDefinitionT>(value));
73 return *this;
74 }
76
78
83 inline const FacetAttributeReference& GetAttributeReference() const { return m_attributeReference; }
84 inline bool AttributeReferenceHasBeenSet() const { return m_attributeReferenceHasBeenSet; }
85 template <typename AttributeReferenceT = FacetAttributeReference>
86 void SetAttributeReference(AttributeReferenceT&& value) {
87 m_attributeReferenceHasBeenSet = true;
88 m_attributeReference = std::forward<AttributeReferenceT>(value);
89 }
90 template <typename AttributeReferenceT = FacetAttributeReference>
91 FacetAttribute& WithAttributeReference(AttributeReferenceT&& value) {
92 SetAttributeReference(std::forward<AttributeReferenceT>(value));
93 return *this;
94 }
96
98
101 inline RequiredAttributeBehavior GetRequiredBehavior() const { return m_requiredBehavior; }
102 inline bool RequiredBehaviorHasBeenSet() const { return m_requiredBehaviorHasBeenSet; }
104 m_requiredBehaviorHasBeenSet = true;
105 m_requiredBehavior = value;
106 }
108 SetRequiredBehavior(value);
109 return *this;
110 }
112 private:
113 Aws::String m_name;
114
115 FacetAttributeDefinition m_attributeDefinition;
116
117 FacetAttributeReference m_attributeReference;
118
120 bool m_nameHasBeenSet = false;
121 bool m_attributeDefinitionHasBeenSet = false;
122 bool m_attributeReferenceHasBeenSet = false;
123 bool m_requiredBehaviorHasBeenSet = false;
124};
125
126} // namespace Model
127} // namespace CloudDirectory
128} // namespace Aws
FacetAttribute & WithAttributeDefinition(AttributeDefinitionT &&value)
AWS_CLOUDDIRECTORY_API FacetAttribute(Aws::Utils::Json::JsonView jsonValue)
void SetAttributeDefinition(AttributeDefinitionT &&value)
FacetAttribute & WithAttributeReference(AttributeReferenceT &&value)
const FacetAttributeDefinition & GetAttributeDefinition() const
RequiredAttributeBehavior GetRequiredBehavior() const
void SetRequiredBehavior(RequiredAttributeBehavior value)
void SetAttributeReference(AttributeReferenceT &&value)
AWS_CLOUDDIRECTORY_API FacetAttribute & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_CLOUDDIRECTORY_API FacetAttribute()=default
const FacetAttributeReference & GetAttributeReference() const
FacetAttribute & WithName(NameT &&value)
AWS_CLOUDDIRECTORY_API Aws::Utils::Json::JsonValue Jsonize() const
FacetAttribute & WithRequiredBehavior(RequiredAttributeBehavior value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue