7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/pinpoint/Pinpoint_EXPORTS.h>
10#include <aws/pinpoint/model/AttributeDimension.h>
11#include <aws/pinpoint/model/MetricDimension.h>
12#include <aws/pinpoint/model/SegmentBehaviors.h>
13#include <aws/pinpoint/model/SegmentDemographics.h>
14#include <aws/pinpoint/model/SegmentLocation.h>
46 template <
typename AttributesT = Aws::Map<Aws::String, AttributeDimension>>
48 m_attributesHasBeenSet =
true;
49 m_attributes = std::forward<AttributesT>(value);
51 template <
typename AttributesT = Aws::Map<Aws::String, AttributeDimension>>
56 template <
typename AttributesKeyT = Aws::String,
typename AttributesValueT = AttributeDimension>
58 m_attributesHasBeenSet =
true;
59 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
71 template <
typename BehaviorT = SegmentBehaviors>
73 m_behaviorHasBeenSet =
true;
74 m_behavior = std::forward<BehaviorT>(value);
76 template <
typename BehaviorT = SegmentBehaviors>
89 template <
typename DemographicT = SegmentDemographics>
91 m_demographicHasBeenSet =
true;
92 m_demographic = std::forward<DemographicT>(value);
94 template <
typename DemographicT = SegmentDemographics>
108 template <
typename LocationT = SegmentLocation>
110 m_locationHasBeenSet =
true;
111 m_location = std::forward<LocationT>(value);
113 template <
typename LocationT = SegmentLocation>
126 template <
typename MetricsT = Aws::Map<Aws::String, MetricDimension>>
128 m_metricsHasBeenSet =
true;
129 m_metrics = std::forward<MetricsT>(value);
131 template <
typename MetricsT = Aws::Map<Aws::String, MetricDimension>>
136 template <
typename MetricsKeyT = Aws::String,
typename MetricsValueT = MetricDimension>
138 m_metricsHasBeenSet =
true;
139 m_metrics.emplace(std::forward<MetricsKeyT>(key), std::forward<MetricsValueT>(value));
150 template <
typename UserAttributesT = Aws::Map<Aws::String, AttributeDimension>>
152 m_userAttributesHasBeenSet =
true;
153 m_userAttributes = std::forward<UserAttributesT>(value);
155 template <
typename UserAttributesT = Aws::Map<Aws::String, AttributeDimension>>
160 template <
typename UserAttributesKeyT = Aws::String,
typename UserAttributesValueT = AttributeDimension>
162 m_userAttributesHasBeenSet =
true;
163 m_userAttributes.emplace(std::forward<UserAttributesKeyT>(key), std::forward<UserAttributesValueT>(value));
179 bool m_attributesHasBeenSet =
false;
180 bool m_behaviorHasBeenSet =
false;
181 bool m_demographicHasBeenSet =
false;
182 bool m_locationHasBeenSet =
false;
183 bool m_metricsHasBeenSet =
false;
184 bool m_userAttributesHasBeenSet =
false;
AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const
SegmentDimensions & WithMetrics(MetricsT &&value)
bool LocationHasBeenSet() const
SegmentDimensions & WithLocation(LocationT &&value)
AWS_PINPOINT_API SegmentDimensions()=default
SegmentDimensions & AddUserAttributes(UserAttributesKeyT &&key, UserAttributesValueT &&value)
SegmentDimensions & WithAttributes(AttributesT &&value)
SegmentDimensions & WithDemographic(DemographicT &&value)
const Aws::Map< Aws::String, AttributeDimension > & GetUserAttributes() const
void SetAttributes(AttributesT &&value)
bool DemographicHasBeenSet() const
const Aws::Map< Aws::String, AttributeDimension > & GetAttributes() const
void SetDemographic(DemographicT &&value)
SegmentDimensions & WithBehavior(BehaviorT &&value)
void SetMetrics(MetricsT &&value)
bool UserAttributesHasBeenSet() const
AWS_PINPOINT_API SegmentDimensions(Aws::Utils::Json::JsonView jsonValue)
SegmentDimensions & AddMetrics(MetricsKeyT &&key, MetricsValueT &&value)
const SegmentDemographics & GetDemographic() const
SegmentDimensions & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
void SetLocation(LocationT &&value)
const SegmentBehaviors & GetBehavior() const
SegmentDimensions & WithUserAttributes(UserAttributesT &&value)
bool AttributesHasBeenSet() const
bool BehaviorHasBeenSet() const
const SegmentLocation & GetLocation() const
void SetUserAttributes(UserAttributesT &&value)
void SetBehavior(BehaviorT &&value)
AWS_PINPOINT_API SegmentDimensions & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Map< Aws::String, MetricDimension > & GetMetrics() const
bool MetricsHasBeenSet() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Aws::Utils::Json::JsonValue JsonValue