/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Pinpoint { namespace Model { /** *

Specifies a condition to evaluate for an activity in a journey.

See * Also:

AWS * API Reference

*/ class SimpleCondition { public: AWS_PINPOINT_API SimpleCondition(); AWS_PINPOINT_API SimpleCondition(Aws::Utils::Json::JsonView jsonValue); AWS_PINPOINT_API SimpleCondition& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The dimension settings for the event that's associated with the activity.

*/ inline const EventCondition& GetEventCondition() const{ return m_eventCondition; } /** *

The dimension settings for the event that's associated with the activity.

*/ inline bool EventConditionHasBeenSet() const { return m_eventConditionHasBeenSet; } /** *

The dimension settings for the event that's associated with the activity.

*/ inline void SetEventCondition(const EventCondition& value) { m_eventConditionHasBeenSet = true; m_eventCondition = value; } /** *

The dimension settings for the event that's associated with the activity.

*/ inline void SetEventCondition(EventCondition&& value) { m_eventConditionHasBeenSet = true; m_eventCondition = std::move(value); } /** *

The dimension settings for the event that's associated with the activity.

*/ inline SimpleCondition& WithEventCondition(const EventCondition& value) { SetEventCondition(value); return *this;} /** *

The dimension settings for the event that's associated with the activity.

*/ inline SimpleCondition& WithEventCondition(EventCondition&& value) { SetEventCondition(std::move(value)); return *this;} /** *

The segment that's associated with the activity.

*/ inline const SegmentCondition& GetSegmentCondition() const{ return m_segmentCondition; } /** *

The segment that's associated with the activity.

*/ inline bool SegmentConditionHasBeenSet() const { return m_segmentConditionHasBeenSet; } /** *

The segment that's associated with the activity.

*/ inline void SetSegmentCondition(const SegmentCondition& value) { m_segmentConditionHasBeenSet = true; m_segmentCondition = value; } /** *

The segment that's associated with the activity.

*/ inline void SetSegmentCondition(SegmentCondition&& value) { m_segmentConditionHasBeenSet = true; m_segmentCondition = std::move(value); } /** *

The segment that's associated with the activity.

*/ inline SimpleCondition& WithSegmentCondition(const SegmentCondition& value) { SetSegmentCondition(value); return *this;} /** *

The segment that's associated with the activity.

*/ inline SimpleCondition& WithSegmentCondition(SegmentCondition&& value) { SetSegmentCondition(std::move(value)); return *this;} /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline const SegmentDimensions& GetSegmentDimensions() const{ return m_segmentDimensions; } /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline bool SegmentDimensionsHasBeenSet() const { return m_segmentDimensionsHasBeenSet; } /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline void SetSegmentDimensions(const SegmentDimensions& value) { m_segmentDimensionsHasBeenSet = true; m_segmentDimensions = value; } /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline void SetSegmentDimensions(SegmentDimensions&& value) { m_segmentDimensionsHasBeenSet = true; m_segmentDimensions = std::move(value); } /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline SimpleCondition& WithSegmentDimensions(const SegmentDimensions& value) { SetSegmentDimensions(value); return *this;} /** *

The dimension settings for the segment that's associated with the * activity.

*/ inline SimpleCondition& WithSegmentDimensions(SegmentDimensions&& value) { SetSegmentDimensions(std::move(value)); return *this;} private: EventCondition m_eventCondition; bool m_eventConditionHasBeenSet = false; SegmentCondition m_segmentCondition; bool m_segmentConditionHasBeenSet = false; SegmentDimensions m_segmentDimensions; bool m_segmentDimensionsHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws