7#include <aws/pinpoint/Pinpoint_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/pinpoint/model/SegmentBehaviors.h>
10#include <aws/pinpoint/model/SegmentDemographics.h>
11#include <aws/pinpoint/model/SegmentLocation.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/pinpoint/model/AttributeDimension.h>
14#include <aws/pinpoint/model/MetricDimension.h>
52 template<
typename AttributesT = Aws::Map<Aws::String, AttributeDimension>>
53 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet =
true; m_attributes = std::forward<AttributesT>(value); }
54 template<
typename AttributesT = Aws::Map<Aws::String, AttributeDimension>>
56 template<
typename AttributesKeyT = Aws::String,
typename AttributesValueT = AttributeDimension>
58 m_attributesHasBeenSet =
true; m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
return *
this;
69 template<
typename BehaviorT = SegmentBehaviors>
70 void SetBehavior(BehaviorT&& value) { m_behaviorHasBeenSet =
true; m_behavior = std::forward<BehaviorT>(value); }
71 template<
typename BehaviorT = SegmentBehaviors>
81 template<
typename DemographicT = SegmentDemographics>
82 void SetDemographic(DemographicT&& value) { m_demographicHasBeenSet =
true; m_demographic = std::forward<DemographicT>(value); }
83 template<
typename DemographicT = SegmentDemographics>
94 template<
typename LocationT = SegmentLocation>
95 void SetLocation(LocationT&& value) { m_locationHasBeenSet =
true; m_location = std::forward<LocationT>(value); }
96 template<
typename LocationT = SegmentLocation>
106 template<
typename MetricsT = Aws::Map<Aws::String, MetricDimension>>
107 void SetMetrics(MetricsT&& value) { m_metricsHasBeenSet =
true; m_metrics = std::forward<MetricsT>(value); }
108 template<
typename MetricsT = Aws::Map<Aws::String, MetricDimension>>
110 template<
typename MetricsKeyT = Aws::String,
typename MetricsValueT = MetricDimension>
112 m_metricsHasBeenSet =
true; m_metrics.emplace(std::forward<MetricsKeyT>(key), std::forward<MetricsValueT>(value));
return *
this;
122 template<
typename UserAttributesT = Aws::Map<Aws::String, AttributeDimension>>
123 void SetUserAttributes(UserAttributesT&& value) { m_userAttributesHasBeenSet =
true; m_userAttributes = std::forward<UserAttributesT>(value); }
124 template<
typename UserAttributesT = Aws::Map<Aws::String, AttributeDimension>>
126 template<
typename UserAttributesKeyT = Aws::String,
typename UserAttributesValueT = AttributeDimension>
128 m_userAttributesHasBeenSet =
true; m_userAttributes.emplace(std::forward<UserAttributesKeyT>(key), std::forward<UserAttributesValueT>(value));
return *
this;
134 bool m_attributesHasBeenSet =
false;
137 bool m_behaviorHasBeenSet =
false;
140 bool m_demographicHasBeenSet =
false;
143 bool m_locationHasBeenSet =
false;
146 bool m_metricsHasBeenSet =
false;
149 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