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/medialive/MediaLive_EXPORTS.h> 8 #include <aws/medialive/model/FailoverConditionSettings.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 MediaLive 22 { 23 namespace Model 24 { 25 26 /** 27 * Failover Condition settings. There can be multiple failover conditions inside 28 * AutomaticInputFailoverSettings.<p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/FailoverCondition">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_MEDIALIVE_API FailoverCondition 33 { 34 public: 35 FailoverCondition(); 36 FailoverCondition(Aws::Utils::Json::JsonView jsonValue); 37 FailoverCondition& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * Failover condition type-specific settings. 43 */ GetFailoverConditionSettings()44 inline const FailoverConditionSettings& GetFailoverConditionSettings() const{ return m_failoverConditionSettings; } 45 46 /** 47 * Failover condition type-specific settings. 48 */ FailoverConditionSettingsHasBeenSet()49 inline bool FailoverConditionSettingsHasBeenSet() const { return m_failoverConditionSettingsHasBeenSet; } 50 51 /** 52 * Failover condition type-specific settings. 53 */ SetFailoverConditionSettings(const FailoverConditionSettings & value)54 inline void SetFailoverConditionSettings(const FailoverConditionSettings& value) { m_failoverConditionSettingsHasBeenSet = true; m_failoverConditionSettings = value; } 55 56 /** 57 * Failover condition type-specific settings. 58 */ SetFailoverConditionSettings(FailoverConditionSettings && value)59 inline void SetFailoverConditionSettings(FailoverConditionSettings&& value) { m_failoverConditionSettingsHasBeenSet = true; m_failoverConditionSettings = std::move(value); } 60 61 /** 62 * Failover condition type-specific settings. 63 */ WithFailoverConditionSettings(const FailoverConditionSettings & value)64 inline FailoverCondition& WithFailoverConditionSettings(const FailoverConditionSettings& value) { SetFailoverConditionSettings(value); return *this;} 65 66 /** 67 * Failover condition type-specific settings. 68 */ WithFailoverConditionSettings(FailoverConditionSettings && value)69 inline FailoverCondition& WithFailoverConditionSettings(FailoverConditionSettings&& value) { SetFailoverConditionSettings(std::move(value)); return *this;} 70 71 private: 72 73 FailoverConditionSettings m_failoverConditionSettings; 74 bool m_failoverConditionSettingsHasBeenSet; 75 }; 76 77 } // namespace Model 78 } // namespace MediaLive 79 } // namespace Aws 80