1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/pinpoint/Pinpoint_EXPORTS.h> 8 #include <aws/pinpoint/model/CampaignStatus.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace Pinpoint 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Provides information about the status of a campaign.</p><p><h3>See Also:</h3> 28 * <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CampaignState">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_PINPOINT_API CampaignState 33 { 34 public: 35 CampaignState(); 36 CampaignState(Aws::Utils::Json::JsonView jsonValue); 37 CampaignState& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The current status of the campaign, or the current status of a treatment that 43 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 44 * campaign has a status of COMPLETED only if all campaign treatments have a status 45 * of COMPLETED. If you delete the segment that's associated with a campaign, the 46 * campaign fails and has a status of DELETED.</p> 47 */ GetCampaignStatus()48 inline const CampaignStatus& GetCampaignStatus() const{ return m_campaignStatus; } 49 50 /** 51 * <p>The current status of the campaign, or the current status of a treatment that 52 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 53 * campaign has a status of COMPLETED only if all campaign treatments have a status 54 * of COMPLETED. If you delete the segment that's associated with a campaign, the 55 * campaign fails and has a status of DELETED.</p> 56 */ CampaignStatusHasBeenSet()57 inline bool CampaignStatusHasBeenSet() const { return m_campaignStatusHasBeenSet; } 58 59 /** 60 * <p>The current status of the campaign, or the current status of a treatment that 61 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 62 * campaign has a status of COMPLETED only if all campaign treatments have a status 63 * of COMPLETED. If you delete the segment that's associated with a campaign, the 64 * campaign fails and has a status of DELETED.</p> 65 */ SetCampaignStatus(const CampaignStatus & value)66 inline void SetCampaignStatus(const CampaignStatus& value) { m_campaignStatusHasBeenSet = true; m_campaignStatus = value; } 67 68 /** 69 * <p>The current status of the campaign, or the current status of a treatment that 70 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 71 * campaign has a status of COMPLETED only if all campaign treatments have a status 72 * of COMPLETED. If you delete the segment that's associated with a campaign, the 73 * campaign fails and has a status of DELETED.</p> 74 */ SetCampaignStatus(CampaignStatus && value)75 inline void SetCampaignStatus(CampaignStatus&& value) { m_campaignStatusHasBeenSet = true; m_campaignStatus = std::move(value); } 76 77 /** 78 * <p>The current status of the campaign, or the current status of a treatment that 79 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 80 * campaign has a status of COMPLETED only if all campaign treatments have a status 81 * of COMPLETED. If you delete the segment that's associated with a campaign, the 82 * campaign fails and has a status of DELETED.</p> 83 */ WithCampaignStatus(const CampaignStatus & value)84 inline CampaignState& WithCampaignStatus(const CampaignStatus& value) { SetCampaignStatus(value); return *this;} 85 86 /** 87 * <p>The current status of the campaign, or the current status of a treatment that 88 * belongs to an A/B test campaign.</p> <p>If a campaign uses A/B testing, the 89 * campaign has a status of COMPLETED only if all campaign treatments have a status 90 * of COMPLETED. If you delete the segment that's associated with a campaign, the 91 * campaign fails and has a status of DELETED.</p> 92 */ WithCampaignStatus(CampaignStatus && value)93 inline CampaignState& WithCampaignStatus(CampaignStatus&& value) { SetCampaignStatus(std::move(value)); return *this;} 94 95 private: 96 97 CampaignStatus m_campaignStatus; 98 bool m_campaignStatusHasBeenSet; 99 }; 100 101 } // namespace Model 102 } // namespace Pinpoint 103 } // namespace Aws 104