/** * 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 MediaLive { namespace Model { /** * Action to prepare an input for a future immediate input switch.

See * Also:

AWS * API Reference

*/ class InputPrepareScheduleActionSettings { public: AWS_MEDIALIVE_API InputPrepareScheduleActionSettings(); AWS_MEDIALIVE_API InputPrepareScheduleActionSettings(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIALIVE_API InputPrepareScheduleActionSettings& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const; /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline const Aws::String& GetInputAttachmentNameReference() const{ return m_inputAttachmentNameReference; } /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline bool InputAttachmentNameReferenceHasBeenSet() const { return m_inputAttachmentNameReferenceHasBeenSet; } /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline void SetInputAttachmentNameReference(const Aws::String& value) { m_inputAttachmentNameReferenceHasBeenSet = true; m_inputAttachmentNameReference = value; } /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline void SetInputAttachmentNameReference(Aws::String&& value) { m_inputAttachmentNameReferenceHasBeenSet = true; m_inputAttachmentNameReference = std::move(value); } /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline void SetInputAttachmentNameReference(const char* value) { m_inputAttachmentNameReferenceHasBeenSet = true; m_inputAttachmentNameReference.assign(value); } /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline InputPrepareScheduleActionSettings& WithInputAttachmentNameReference(const Aws::String& value) { SetInputAttachmentNameReference(value); return *this;} /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline InputPrepareScheduleActionSettings& WithInputAttachmentNameReference(Aws::String&& value) { SetInputAttachmentNameReference(std::move(value)); return *this;} /** * The name of the input attachment that should be prepared by this action. If no * name is provided, the action will stop the most recent prepare (if any) when * activated. */ inline InputPrepareScheduleActionSettings& WithInputAttachmentNameReference(const char* value) { SetInputAttachmentNameReference(value); return *this;} /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline const InputClippingSettings& GetInputClippingSettings() const{ return m_inputClippingSettings; } /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline bool InputClippingSettingsHasBeenSet() const { return m_inputClippingSettingsHasBeenSet; } /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline void SetInputClippingSettings(const InputClippingSettings& value) { m_inputClippingSettingsHasBeenSet = true; m_inputClippingSettings = value; } /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline void SetInputClippingSettings(InputClippingSettings&& value) { m_inputClippingSettingsHasBeenSet = true; m_inputClippingSettings = std::move(value); } /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline InputPrepareScheduleActionSettings& WithInputClippingSettings(const InputClippingSettings& value) { SetInputClippingSettings(value); return *this;} /** * Settings to let you create a clip of the file input, in order to set up the * input to ingest only a portion of the file. */ inline InputPrepareScheduleActionSettings& WithInputClippingSettings(InputClippingSettings&& value) { SetInputClippingSettings(std::move(value)); return *this;} /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline const Aws::Vector& GetUrlPath() const{ return m_urlPath; } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline bool UrlPathHasBeenSet() const { return m_urlPathHasBeenSet; } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline void SetUrlPath(const Aws::Vector& value) { m_urlPathHasBeenSet = true; m_urlPath = value; } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline void SetUrlPath(Aws::Vector&& value) { m_urlPathHasBeenSet = true; m_urlPath = std::move(value); } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline InputPrepareScheduleActionSettings& WithUrlPath(const Aws::Vector& value) { SetUrlPath(value); return *this;} /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline InputPrepareScheduleActionSettings& WithUrlPath(Aws::Vector&& value) { SetUrlPath(std::move(value)); return *this;} /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline InputPrepareScheduleActionSettings& AddUrlPath(const Aws::String& value) { m_urlPathHasBeenSet = true; m_urlPath.push_back(value); return *this; } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline InputPrepareScheduleActionSettings& AddUrlPath(Aws::String&& value) { m_urlPathHasBeenSet = true; m_urlPath.push_back(std::move(value)); return *this; } /** * The value for the variable portion of the URL for the dynamic input, for this * instance of the input. Each time you use the same dynamic input in an input * switch action, you can provide a different value, in order to connect the input * to a different content source. */ inline InputPrepareScheduleActionSettings& AddUrlPath(const char* value) { m_urlPathHasBeenSet = true; m_urlPath.push_back(value); return *this; } private: Aws::String m_inputAttachmentNameReference; bool m_inputAttachmentNameReferenceHasBeenSet = false; InputClippingSettings m_inputClippingSettings; bool m_inputClippingSettingsHasBeenSet = false; Aws::Vector m_urlPath; bool m_urlPathHasBeenSet = false; }; } // namespace Model } // namespace MediaLive } // namespace Aws