AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
FacetAttributeDefinition.h
1
6#pragma once
7#include <aws/clouddirectory/CloudDirectory_EXPORTS.h>
8#include <aws/clouddirectory/model/FacetAttributeType.h>
9#include <aws/clouddirectory/model/TypedAttributeValue.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/clouddirectory/model/Rule.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace CloudDirectory
26{
27namespace Model
28{
29
38 {
39 public:
40 AWS_CLOUDDIRECTORY_API FacetAttributeDefinition();
41 AWS_CLOUDDIRECTORY_API FacetAttributeDefinition(Aws::Utils::Json::JsonView jsonValue);
43 AWS_CLOUDDIRECTORY_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline const FacetAttributeType& GetType() const{ return m_type; }
51 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
52 inline void SetType(const FacetAttributeType& value) { m_typeHasBeenSet = true; m_type = value; }
53 inline void SetType(FacetAttributeType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
54 inline FacetAttributeDefinition& WithType(const FacetAttributeType& value) { SetType(value); return *this;}
55 inline FacetAttributeDefinition& WithType(FacetAttributeType&& value) { SetType(std::move(value)); return *this;}
57
59
62 inline const TypedAttributeValue& GetDefaultValue() const{ return m_defaultValue; }
63 inline bool DefaultValueHasBeenSet() const { return m_defaultValueHasBeenSet; }
64 inline void SetDefaultValue(const TypedAttributeValue& value) { m_defaultValueHasBeenSet = true; m_defaultValue = value; }
65 inline void SetDefaultValue(TypedAttributeValue&& value) { m_defaultValueHasBeenSet = true; m_defaultValue = std::move(value); }
67 inline FacetAttributeDefinition& WithDefaultValue(TypedAttributeValue&& value) { SetDefaultValue(std::move(value)); return *this;}
69
71
74 inline bool GetIsImmutable() const{ return m_isImmutable; }
75 inline bool IsImmutableHasBeenSet() const { return m_isImmutableHasBeenSet; }
76 inline void SetIsImmutable(bool value) { m_isImmutableHasBeenSet = true; m_isImmutable = value; }
77 inline FacetAttributeDefinition& WithIsImmutable(bool value) { SetIsImmutable(value); return *this;}
79
81
84 inline const Aws::Map<Aws::String, Rule>& GetRules() const{ return m_rules; }
85 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
86 inline void SetRules(const Aws::Map<Aws::String, Rule>& value) { m_rulesHasBeenSet = true; m_rules = value; }
87 inline void SetRules(Aws::Map<Aws::String, Rule>&& value) { m_rulesHasBeenSet = true; m_rules = std::move(value); }
88 inline FacetAttributeDefinition& WithRules(const Aws::Map<Aws::String, Rule>& value) { SetRules(value); return *this;}
89 inline FacetAttributeDefinition& WithRules(Aws::Map<Aws::String, Rule>&& value) { SetRules(std::move(value)); return *this;}
90 inline FacetAttributeDefinition& AddRules(const Aws::String& key, const Rule& value) { m_rulesHasBeenSet = true; m_rules.emplace(key, value); return *this; }
91 inline FacetAttributeDefinition& AddRules(Aws::String&& key, const Rule& value) { m_rulesHasBeenSet = true; m_rules.emplace(std::move(key), value); return *this; }
92 inline FacetAttributeDefinition& AddRules(const Aws::String& key, Rule&& value) { m_rulesHasBeenSet = true; m_rules.emplace(key, std::move(value)); return *this; }
93 inline FacetAttributeDefinition& AddRules(Aws::String&& key, Rule&& value) { m_rulesHasBeenSet = true; m_rules.emplace(std::move(key), std::move(value)); return *this; }
94 inline FacetAttributeDefinition& AddRules(const char* key, Rule&& value) { m_rulesHasBeenSet = true; m_rules.emplace(key, std::move(value)); return *this; }
95 inline FacetAttributeDefinition& AddRules(const char* key, const Rule& value) { m_rulesHasBeenSet = true; m_rules.emplace(key, value); return *this; }
97 private:
98
99 FacetAttributeType m_type;
100 bool m_typeHasBeenSet = false;
101
102 TypedAttributeValue m_defaultValue;
103 bool m_defaultValueHasBeenSet = false;
104
105 bool m_isImmutable;
106 bool m_isImmutableHasBeenSet = false;
107
109 bool m_rulesHasBeenSet = false;
110 };
111
112} // namespace Model
113} // namespace CloudDirectory
114} // namespace Aws
FacetAttributeDefinition & WithRules(Aws::Map< Aws::String, Rule > &&value)
AWS_CLOUDDIRECTORY_API Aws::Utils::Json::JsonValue Jsonize() const
FacetAttributeDefinition & AddRules(const char *key, Rule &&value)
FacetAttributeDefinition & AddRules(const Aws::String &key, Rule &&value)
FacetAttributeDefinition & AddRules(Aws::String &&key, const Rule &value)
FacetAttributeDefinition & AddRules(const char *key, const Rule &value)
FacetAttributeDefinition & WithDefaultValue(TypedAttributeValue &&value)
FacetAttributeDefinition & WithType(const FacetAttributeType &value)
AWS_CLOUDDIRECTORY_API FacetAttributeDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
FacetAttributeDefinition & WithDefaultValue(const TypedAttributeValue &value)
AWS_CLOUDDIRECTORY_API FacetAttributeDefinition(Aws::Utils::Json::JsonView jsonValue)
FacetAttributeDefinition & AddRules(const Aws::String &key, const Rule &value)
FacetAttributeDefinition & WithRules(const Aws::Map< Aws::String, Rule > &value)
const Aws::Map< Aws::String, Rule > & GetRules() const
void SetRules(const Aws::Map< Aws::String, Rule > &value)
FacetAttributeDefinition & WithType(FacetAttributeType &&value)
void SetRules(Aws::Map< Aws::String, Rule > &&value)
FacetAttributeDefinition & AddRules(Aws::String &&key, Rule &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue