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/StaticKeySettings.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 * Key Provider Settings<p><h3>See Also:</h3> <a 28 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/KeyProviderSettings">AWS 29 * API Reference</a></p> 30 */ 31 class AWS_MEDIALIVE_API KeyProviderSettings 32 { 33 public: 34 KeyProviderSettings(); 35 KeyProviderSettings(Aws::Utils::Json::JsonView jsonValue); 36 KeyProviderSettings& operator=(Aws::Utils::Json::JsonView jsonValue); 37 Aws::Utils::Json::JsonValue Jsonize() const; 38 39 40 GetStaticKeySettings()41 inline const StaticKeySettings& GetStaticKeySettings() const{ return m_staticKeySettings; } 42 43 StaticKeySettingsHasBeenSet()44 inline bool StaticKeySettingsHasBeenSet() const { return m_staticKeySettingsHasBeenSet; } 45 46 SetStaticKeySettings(const StaticKeySettings & value)47 inline void SetStaticKeySettings(const StaticKeySettings& value) { m_staticKeySettingsHasBeenSet = true; m_staticKeySettings = value; } 48 49 SetStaticKeySettings(StaticKeySettings && value)50 inline void SetStaticKeySettings(StaticKeySettings&& value) { m_staticKeySettingsHasBeenSet = true; m_staticKeySettings = std::move(value); } 51 52 WithStaticKeySettings(const StaticKeySettings & value)53 inline KeyProviderSettings& WithStaticKeySettings(const StaticKeySettings& value) { SetStaticKeySettings(value); return *this;} 54 55 WithStaticKeySettings(StaticKeySettings && value)56 inline KeyProviderSettings& WithStaticKeySettings(StaticKeySettings&& value) { SetStaticKeySettings(std::move(value)); return *this;} 57 58 private: 59 60 StaticKeySettings m_staticKeySettings; 61 bool m_staticKeySettingsHasBeenSet; 62 }; 63 64 } // namespace Model 65 } // namespace MediaLive 66 } // namespace Aws 67