{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.MediaLive.Types.ScheduleActionSettings
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.MediaLive.Types.ScheduleActionSettings where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MediaLive.Types.HlsId3SegmentTaggingScheduleActionSettings
import Amazonka.MediaLive.Types.HlsTimedMetadataScheduleActionSettings
import Amazonka.MediaLive.Types.InputPrepareScheduleActionSettings
import Amazonka.MediaLive.Types.InputSwitchScheduleActionSettings
import Amazonka.MediaLive.Types.MotionGraphicsActivateScheduleActionSettings
import Amazonka.MediaLive.Types.MotionGraphicsDeactivateScheduleActionSettings
import Amazonka.MediaLive.Types.PauseStateScheduleActionSettings
import Amazonka.MediaLive.Types.Scte35InputScheduleActionSettings
import Amazonka.MediaLive.Types.Scte35ReturnToNetworkScheduleActionSettings
import Amazonka.MediaLive.Types.Scte35SpliceInsertScheduleActionSettings
import Amazonka.MediaLive.Types.Scte35TimeSignalScheduleActionSettings
import Amazonka.MediaLive.Types.StaticImageActivateScheduleActionSettings
import Amazonka.MediaLive.Types.StaticImageDeactivateScheduleActionSettings
import qualified Amazonka.Prelude as Prelude

-- | Holds the settings for a single schedule action.
--
-- /See:/ 'newScheduleActionSettings' smart constructor.
data ScheduleActionSettings = ScheduleActionSettings'
  { -- | Action to insert HLS ID3 segment tagging
    ScheduleActionSettings
-> Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings :: Prelude.Maybe HlsId3SegmentTaggingScheduleActionSettings,
    -- | Action to insert HLS metadata
    ScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings :: Prelude.Maybe HlsTimedMetadataScheduleActionSettings,
    -- | Action to prepare an input for a future immediate input switch
    ScheduleActionSettings -> Maybe InputPrepareScheduleActionSettings
inputPrepareSettings :: Prelude.Maybe InputPrepareScheduleActionSettings,
    -- | Action to switch the input
    ScheduleActionSettings -> Maybe InputSwitchScheduleActionSettings
inputSwitchSettings :: Prelude.Maybe InputSwitchScheduleActionSettings,
    -- | Action to activate a motion graphics image overlay
    ScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings :: Prelude.Maybe MotionGraphicsActivateScheduleActionSettings,
    -- | Action to deactivate a motion graphics image overlay
    ScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings :: Prelude.Maybe MotionGraphicsDeactivateScheduleActionSettings,
    -- | Action to pause or unpause one or both channel pipelines
    ScheduleActionSettings -> Maybe PauseStateScheduleActionSettings
pauseStateSettings :: Prelude.Maybe PauseStateScheduleActionSettings,
    -- | Action to specify scte35 input
    ScheduleActionSettings -> Maybe Scte35InputScheduleActionSettings
scte35InputSettings :: Prelude.Maybe Scte35InputScheduleActionSettings,
    -- | Action to insert SCTE-35 return_to_network message
    ScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings :: Prelude.Maybe Scte35ReturnToNetworkScheduleActionSettings,
    -- | Action to insert SCTE-35 splice_insert message
    ScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings :: Prelude.Maybe Scte35SpliceInsertScheduleActionSettings,
    -- | Action to insert SCTE-35 time_signal message
    ScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings :: Prelude.Maybe Scte35TimeSignalScheduleActionSettings,
    -- | Action to activate a static image overlay
    ScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings :: Prelude.Maybe StaticImageActivateScheduleActionSettings,
    -- | Action to deactivate a static image overlay
    ScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings :: Prelude.Maybe StaticImageDeactivateScheduleActionSettings
  }
  deriving (ScheduleActionSettings -> ScheduleActionSettings -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ScheduleActionSettings -> ScheduleActionSettings -> Bool
$c/= :: ScheduleActionSettings -> ScheduleActionSettings -> Bool
== :: ScheduleActionSettings -> ScheduleActionSettings -> Bool
$c== :: ScheduleActionSettings -> ScheduleActionSettings -> Bool
Prelude.Eq, ReadPrec [ScheduleActionSettings]
ReadPrec ScheduleActionSettings
Int -> ReadS ScheduleActionSettings
ReadS [ScheduleActionSettings]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ScheduleActionSettings]
$creadListPrec :: ReadPrec [ScheduleActionSettings]
readPrec :: ReadPrec ScheduleActionSettings
$creadPrec :: ReadPrec ScheduleActionSettings
readList :: ReadS [ScheduleActionSettings]
$creadList :: ReadS [ScheduleActionSettings]
readsPrec :: Int -> ReadS ScheduleActionSettings
$creadsPrec :: Int -> ReadS ScheduleActionSettings
Prelude.Read, Int -> ScheduleActionSettings -> ShowS
[ScheduleActionSettings] -> ShowS
ScheduleActionSettings -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ScheduleActionSettings] -> ShowS
$cshowList :: [ScheduleActionSettings] -> ShowS
show :: ScheduleActionSettings -> String
$cshow :: ScheduleActionSettings -> String
showsPrec :: Int -> ScheduleActionSettings -> ShowS
$cshowsPrec :: Int -> ScheduleActionSettings -> ShowS
Prelude.Show, forall x. Rep ScheduleActionSettings x -> ScheduleActionSettings
forall x. ScheduleActionSettings -> Rep ScheduleActionSettings x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ScheduleActionSettings x -> ScheduleActionSettings
$cfrom :: forall x. ScheduleActionSettings -> Rep ScheduleActionSettings x
Prelude.Generic)

-- |
-- Create a value of 'ScheduleActionSettings' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'hlsId3SegmentTaggingSettings', 'scheduleActionSettings_hlsId3SegmentTaggingSettings' - Action to insert HLS ID3 segment tagging
--
-- 'hlsTimedMetadataSettings', 'scheduleActionSettings_hlsTimedMetadataSettings' - Action to insert HLS metadata
--
-- 'inputPrepareSettings', 'scheduleActionSettings_inputPrepareSettings' - Action to prepare an input for a future immediate input switch
--
-- 'inputSwitchSettings', 'scheduleActionSettings_inputSwitchSettings' - Action to switch the input
--
-- 'motionGraphicsImageActivateSettings', 'scheduleActionSettings_motionGraphicsImageActivateSettings' - Action to activate a motion graphics image overlay
--
-- 'motionGraphicsImageDeactivateSettings', 'scheduleActionSettings_motionGraphicsImageDeactivateSettings' - Action to deactivate a motion graphics image overlay
--
-- 'pauseStateSettings', 'scheduleActionSettings_pauseStateSettings' - Action to pause or unpause one or both channel pipelines
--
-- 'scte35InputSettings', 'scheduleActionSettings_scte35InputSettings' - Action to specify scte35 input
--
-- 'scte35ReturnToNetworkSettings', 'scheduleActionSettings_scte35ReturnToNetworkSettings' - Action to insert SCTE-35 return_to_network message
--
-- 'scte35SpliceInsertSettings', 'scheduleActionSettings_scte35SpliceInsertSettings' - Action to insert SCTE-35 splice_insert message
--
-- 'scte35TimeSignalSettings', 'scheduleActionSettings_scte35TimeSignalSettings' - Action to insert SCTE-35 time_signal message
--
-- 'staticImageActivateSettings', 'scheduleActionSettings_staticImageActivateSettings' - Action to activate a static image overlay
--
-- 'staticImageDeactivateSettings', 'scheduleActionSettings_staticImageDeactivateSettings' - Action to deactivate a static image overlay
newScheduleActionSettings ::
  ScheduleActionSettings
newScheduleActionSettings :: ScheduleActionSettings
newScheduleActionSettings =
  ScheduleActionSettings'
    { $sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:inputPrepareSettings:ScheduleActionSettings' :: Maybe InputPrepareScheduleActionSettings
inputPrepareSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:inputSwitchSettings:ScheduleActionSettings' :: Maybe InputSwitchScheduleActionSettings
inputSwitchSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:pauseStateSettings:ScheduleActionSettings' :: Maybe PauseStateScheduleActionSettings
pauseStateSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:scte35InputSettings:ScheduleActionSettings' :: Maybe Scte35InputScheduleActionSettings
scte35InputSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:scte35TimeSignalSettings:ScheduleActionSettings' :: Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:staticImageActivateSettings:ScheduleActionSettings' :: Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:staticImageDeactivateSettings:ScheduleActionSettings' :: Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings = forall a. Maybe a
Prelude.Nothing
    }

-- | Action to insert HLS ID3 segment tagging
scheduleActionSettings_hlsId3SegmentTaggingSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe HlsId3SegmentTaggingScheduleActionSettings)
scheduleActionSettings_hlsId3SegmentTaggingSettings :: Lens'
  ScheduleActionSettings
  (Maybe HlsId3SegmentTaggingScheduleActionSettings)
scheduleActionSettings_hlsId3SegmentTaggingSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings :: Maybe HlsId3SegmentTaggingScheduleActionSettings
$sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings} -> Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe HlsId3SegmentTaggingScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings = Maybe HlsId3SegmentTaggingScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to insert HLS metadata
scheduleActionSettings_hlsTimedMetadataSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe HlsTimedMetadataScheduleActionSettings)
scheduleActionSettings_hlsTimedMetadataSettings :: Lens'
  ScheduleActionSettings
  (Maybe HlsTimedMetadataScheduleActionSettings)
scheduleActionSettings_hlsTimedMetadataSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings :: Maybe HlsTimedMetadataScheduleActionSettings
$sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings} -> Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe HlsTimedMetadataScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings = Maybe HlsTimedMetadataScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to prepare an input for a future immediate input switch
scheduleActionSettings_inputPrepareSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe InputPrepareScheduleActionSettings)
scheduleActionSettings_inputPrepareSettings :: Lens'
  ScheduleActionSettings (Maybe InputPrepareScheduleActionSettings)
scheduleActionSettings_inputPrepareSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe InputPrepareScheduleActionSettings
inputPrepareSettings :: Maybe InputPrepareScheduleActionSettings
$sel:inputPrepareSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputPrepareScheduleActionSettings
inputPrepareSettings} -> Maybe InputPrepareScheduleActionSettings
inputPrepareSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe InputPrepareScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:inputPrepareSettings:ScheduleActionSettings' :: Maybe InputPrepareScheduleActionSettings
inputPrepareSettings = Maybe InputPrepareScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to switch the input
scheduleActionSettings_inputSwitchSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe InputSwitchScheduleActionSettings)
scheduleActionSettings_inputSwitchSettings :: Lens'
  ScheduleActionSettings (Maybe InputSwitchScheduleActionSettings)
scheduleActionSettings_inputSwitchSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe InputSwitchScheduleActionSettings
inputSwitchSettings :: Maybe InputSwitchScheduleActionSettings
$sel:inputSwitchSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputSwitchScheduleActionSettings
inputSwitchSettings} -> Maybe InputSwitchScheduleActionSettings
inputSwitchSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe InputSwitchScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:inputSwitchSettings:ScheduleActionSettings' :: Maybe InputSwitchScheduleActionSettings
inputSwitchSettings = Maybe InputSwitchScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to activate a motion graphics image overlay
scheduleActionSettings_motionGraphicsImageActivateSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe MotionGraphicsActivateScheduleActionSettings)
scheduleActionSettings_motionGraphicsImageActivateSettings :: Lens'
  ScheduleActionSettings
  (Maybe MotionGraphicsActivateScheduleActionSettings)
scheduleActionSettings_motionGraphicsImageActivateSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings :: Maybe MotionGraphicsActivateScheduleActionSettings
$sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings} -> Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe MotionGraphicsActivateScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings = Maybe MotionGraphicsActivateScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to deactivate a motion graphics image overlay
scheduleActionSettings_motionGraphicsImageDeactivateSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe MotionGraphicsDeactivateScheduleActionSettings)
scheduleActionSettings_motionGraphicsImageDeactivateSettings :: Lens'
  ScheduleActionSettings
  (Maybe MotionGraphicsDeactivateScheduleActionSettings)
scheduleActionSettings_motionGraphicsImageDeactivateSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings :: Maybe MotionGraphicsDeactivateScheduleActionSettings
$sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings} -> Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe MotionGraphicsDeactivateScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings = Maybe MotionGraphicsDeactivateScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to pause or unpause one or both channel pipelines
scheduleActionSettings_pauseStateSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe PauseStateScheduleActionSettings)
scheduleActionSettings_pauseStateSettings :: Lens'
  ScheduleActionSettings (Maybe PauseStateScheduleActionSettings)
scheduleActionSettings_pauseStateSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe PauseStateScheduleActionSettings
pauseStateSettings :: Maybe PauseStateScheduleActionSettings
$sel:pauseStateSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe PauseStateScheduleActionSettings
pauseStateSettings} -> Maybe PauseStateScheduleActionSettings
pauseStateSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe PauseStateScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:pauseStateSettings:ScheduleActionSettings' :: Maybe PauseStateScheduleActionSettings
pauseStateSettings = Maybe PauseStateScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to specify scte35 input
scheduleActionSettings_scte35InputSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe Scte35InputScheduleActionSettings)
scheduleActionSettings_scte35InputSettings :: Lens'
  ScheduleActionSettings (Maybe Scte35InputScheduleActionSettings)
scheduleActionSettings_scte35InputSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe Scte35InputScheduleActionSettings
scte35InputSettings :: Maybe Scte35InputScheduleActionSettings
$sel:scte35InputSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe Scte35InputScheduleActionSettings
scte35InputSettings} -> Maybe Scte35InputScheduleActionSettings
scte35InputSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe Scte35InputScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:scte35InputSettings:ScheduleActionSettings' :: Maybe Scte35InputScheduleActionSettings
scte35InputSettings = Maybe Scte35InputScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to insert SCTE-35 return_to_network message
scheduleActionSettings_scte35ReturnToNetworkSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe Scte35ReturnToNetworkScheduleActionSettings)
scheduleActionSettings_scte35ReturnToNetworkSettings :: Lens'
  ScheduleActionSettings
  (Maybe Scte35ReturnToNetworkScheduleActionSettings)
scheduleActionSettings_scte35ReturnToNetworkSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings :: Maybe Scte35ReturnToNetworkScheduleActionSettings
$sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings} -> Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe Scte35ReturnToNetworkScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings = Maybe Scte35ReturnToNetworkScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to insert SCTE-35 splice_insert message
scheduleActionSettings_scte35SpliceInsertSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe Scte35SpliceInsertScheduleActionSettings)
scheduleActionSettings_scte35SpliceInsertSettings :: Lens'
  ScheduleActionSettings
  (Maybe Scte35SpliceInsertScheduleActionSettings)
scheduleActionSettings_scte35SpliceInsertSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings :: Maybe Scte35SpliceInsertScheduleActionSettings
$sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings} -> Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe Scte35SpliceInsertScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings = Maybe Scte35SpliceInsertScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to insert SCTE-35 time_signal message
scheduleActionSettings_scte35TimeSignalSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe Scte35TimeSignalScheduleActionSettings)
scheduleActionSettings_scte35TimeSignalSettings :: Lens'
  ScheduleActionSettings
  (Maybe Scte35TimeSignalScheduleActionSettings)
scheduleActionSettings_scte35TimeSignalSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings :: Maybe Scte35TimeSignalScheduleActionSettings
$sel:scte35TimeSignalSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings} -> Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe Scte35TimeSignalScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:scte35TimeSignalSettings:ScheduleActionSettings' :: Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings = Maybe Scte35TimeSignalScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to activate a static image overlay
scheduleActionSettings_staticImageActivateSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe StaticImageActivateScheduleActionSettings)
scheduleActionSettings_staticImageActivateSettings :: Lens'
  ScheduleActionSettings
  (Maybe StaticImageActivateScheduleActionSettings)
scheduleActionSettings_staticImageActivateSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings :: Maybe StaticImageActivateScheduleActionSettings
$sel:staticImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings} -> Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe StaticImageActivateScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:staticImageActivateSettings:ScheduleActionSettings' :: Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings = Maybe StaticImageActivateScheduleActionSettings
a} :: ScheduleActionSettings)

-- | Action to deactivate a static image overlay
scheduleActionSettings_staticImageDeactivateSettings :: Lens.Lens' ScheduleActionSettings (Prelude.Maybe StaticImageDeactivateScheduleActionSettings)
scheduleActionSettings_staticImageDeactivateSettings :: Lens'
  ScheduleActionSettings
  (Maybe StaticImageDeactivateScheduleActionSettings)
scheduleActionSettings_staticImageDeactivateSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ScheduleActionSettings' {Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings :: Maybe StaticImageDeactivateScheduleActionSettings
$sel:staticImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings} -> Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings) (\s :: ScheduleActionSettings
s@ScheduleActionSettings' {} Maybe StaticImageDeactivateScheduleActionSettings
a -> ScheduleActionSettings
s {$sel:staticImageDeactivateSettings:ScheduleActionSettings' :: Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings = Maybe StaticImageDeactivateScheduleActionSettings
a} :: ScheduleActionSettings)

instance Data.FromJSON ScheduleActionSettings where
  parseJSON :: Value -> Parser ScheduleActionSettings
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"ScheduleActionSettings"
      ( \Object
x ->
          Maybe HlsId3SegmentTaggingScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
-> Maybe InputPrepareScheduleActionSettings
-> Maybe InputSwitchScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
-> Maybe PauseStateScheduleActionSettings
-> Maybe Scte35InputScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
-> ScheduleActionSettings
ScheduleActionSettings'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"hlsId3SegmentTaggingSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"hlsTimedMetadataSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"inputPrepareSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"inputSwitchSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"motionGraphicsImageActivateSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"motionGraphicsImageDeactivateSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"pauseStateSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte35InputSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte35ReturnToNetworkSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte35SpliceInsertSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte35TimeSignalSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"staticImageActivateSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"staticImageDeactivateSettings")
      )

instance Prelude.Hashable ScheduleActionSettings where
  hashWithSalt :: Int -> ScheduleActionSettings -> Int
hashWithSalt Int
_salt ScheduleActionSettings' {Maybe HlsId3SegmentTaggingScheduleActionSettings
Maybe HlsTimedMetadataScheduleActionSettings
Maybe MotionGraphicsActivateScheduleActionSettings
Maybe MotionGraphicsDeactivateScheduleActionSettings
Maybe PauseStateScheduleActionSettings
Maybe Scte35InputScheduleActionSettings
Maybe Scte35ReturnToNetworkScheduleActionSettings
Maybe Scte35SpliceInsertScheduleActionSettings
Maybe Scte35TimeSignalScheduleActionSettings
Maybe StaticImageActivateScheduleActionSettings
Maybe StaticImageDeactivateScheduleActionSettings
Maybe InputSwitchScheduleActionSettings
Maybe InputPrepareScheduleActionSettings
staticImageDeactivateSettings :: Maybe StaticImageDeactivateScheduleActionSettings
staticImageActivateSettings :: Maybe StaticImageActivateScheduleActionSettings
scte35TimeSignalSettings :: Maybe Scte35TimeSignalScheduleActionSettings
scte35SpliceInsertSettings :: Maybe Scte35SpliceInsertScheduleActionSettings
scte35ReturnToNetworkSettings :: Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35InputSettings :: Maybe Scte35InputScheduleActionSettings
pauseStateSettings :: Maybe PauseStateScheduleActionSettings
motionGraphicsImageDeactivateSettings :: Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageActivateSettings :: Maybe MotionGraphicsActivateScheduleActionSettings
inputSwitchSettings :: Maybe InputSwitchScheduleActionSettings
inputPrepareSettings :: Maybe InputPrepareScheduleActionSettings
hlsTimedMetadataSettings :: Maybe HlsTimedMetadataScheduleActionSettings
hlsId3SegmentTaggingSettings :: Maybe HlsId3SegmentTaggingScheduleActionSettings
$sel:staticImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
$sel:staticImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
$sel:scte35TimeSignalSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
$sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
$sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
$sel:scte35InputSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe Scte35InputScheduleActionSettings
$sel:pauseStateSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe PauseStateScheduleActionSettings
$sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
$sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
$sel:inputSwitchSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputSwitchScheduleActionSettings
$sel:inputPrepareSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputPrepareScheduleActionSettings
$sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
$sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsId3SegmentTaggingScheduleActionSettings
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputPrepareScheduleActionSettings
inputPrepareSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputSwitchScheduleActionSettings
inputSwitchSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PauseStateScheduleActionSettings
pauseStateSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte35InputScheduleActionSettings
scte35InputSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings

instance Prelude.NFData ScheduleActionSettings where
  rnf :: ScheduleActionSettings -> ()
rnf ScheduleActionSettings' {Maybe HlsId3SegmentTaggingScheduleActionSettings
Maybe HlsTimedMetadataScheduleActionSettings
Maybe MotionGraphicsActivateScheduleActionSettings
Maybe MotionGraphicsDeactivateScheduleActionSettings
Maybe PauseStateScheduleActionSettings
Maybe Scte35InputScheduleActionSettings
Maybe Scte35ReturnToNetworkScheduleActionSettings
Maybe Scte35SpliceInsertScheduleActionSettings
Maybe Scte35TimeSignalScheduleActionSettings
Maybe StaticImageActivateScheduleActionSettings
Maybe StaticImageDeactivateScheduleActionSettings
Maybe InputSwitchScheduleActionSettings
Maybe InputPrepareScheduleActionSettings
staticImageDeactivateSettings :: Maybe StaticImageDeactivateScheduleActionSettings
staticImageActivateSettings :: Maybe StaticImageActivateScheduleActionSettings
scte35TimeSignalSettings :: Maybe Scte35TimeSignalScheduleActionSettings
scte35SpliceInsertSettings :: Maybe Scte35SpliceInsertScheduleActionSettings
scte35ReturnToNetworkSettings :: Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35InputSettings :: Maybe Scte35InputScheduleActionSettings
pauseStateSettings :: Maybe PauseStateScheduleActionSettings
motionGraphicsImageDeactivateSettings :: Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageActivateSettings :: Maybe MotionGraphicsActivateScheduleActionSettings
inputSwitchSettings :: Maybe InputSwitchScheduleActionSettings
inputPrepareSettings :: Maybe InputPrepareScheduleActionSettings
hlsTimedMetadataSettings :: Maybe HlsTimedMetadataScheduleActionSettings
hlsId3SegmentTaggingSettings :: Maybe HlsId3SegmentTaggingScheduleActionSettings
$sel:staticImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
$sel:staticImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
$sel:scte35TimeSignalSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
$sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
$sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
$sel:scte35InputSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe Scte35InputScheduleActionSettings
$sel:pauseStateSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe PauseStateScheduleActionSettings
$sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
$sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
$sel:inputSwitchSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputSwitchScheduleActionSettings
$sel:inputPrepareSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputPrepareScheduleActionSettings
$sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
$sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsId3SegmentTaggingScheduleActionSettings
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InputPrepareScheduleActionSettings
inputPrepareSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InputSwitchScheduleActionSettings
inputSwitchSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PauseStateScheduleActionSettings
pauseStateSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte35InputScheduleActionSettings
scte35InputSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings

instance Data.ToJSON ScheduleActionSettings where
  toJSON :: ScheduleActionSettings -> Value
toJSON ScheduleActionSettings' {Maybe HlsId3SegmentTaggingScheduleActionSettings
Maybe HlsTimedMetadataScheduleActionSettings
Maybe MotionGraphicsActivateScheduleActionSettings
Maybe MotionGraphicsDeactivateScheduleActionSettings
Maybe PauseStateScheduleActionSettings
Maybe Scte35InputScheduleActionSettings
Maybe Scte35ReturnToNetworkScheduleActionSettings
Maybe Scte35SpliceInsertScheduleActionSettings
Maybe Scte35TimeSignalScheduleActionSettings
Maybe StaticImageActivateScheduleActionSettings
Maybe StaticImageDeactivateScheduleActionSettings
Maybe InputSwitchScheduleActionSettings
Maybe InputPrepareScheduleActionSettings
staticImageDeactivateSettings :: Maybe StaticImageDeactivateScheduleActionSettings
staticImageActivateSettings :: Maybe StaticImageActivateScheduleActionSettings
scte35TimeSignalSettings :: Maybe Scte35TimeSignalScheduleActionSettings
scte35SpliceInsertSettings :: Maybe Scte35SpliceInsertScheduleActionSettings
scte35ReturnToNetworkSettings :: Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35InputSettings :: Maybe Scte35InputScheduleActionSettings
pauseStateSettings :: Maybe PauseStateScheduleActionSettings
motionGraphicsImageDeactivateSettings :: Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageActivateSettings :: Maybe MotionGraphicsActivateScheduleActionSettings
inputSwitchSettings :: Maybe InputSwitchScheduleActionSettings
inputPrepareSettings :: Maybe InputPrepareScheduleActionSettings
hlsTimedMetadataSettings :: Maybe HlsTimedMetadataScheduleActionSettings
hlsId3SegmentTaggingSettings :: Maybe HlsId3SegmentTaggingScheduleActionSettings
$sel:staticImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageDeactivateScheduleActionSettings
$sel:staticImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe StaticImageActivateScheduleActionSettings
$sel:scte35TimeSignalSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35TimeSignalScheduleActionSettings
$sel:scte35SpliceInsertSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35SpliceInsertScheduleActionSettings
$sel:scte35ReturnToNetworkSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe Scte35ReturnToNetworkScheduleActionSettings
$sel:scte35InputSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe Scte35InputScheduleActionSettings
$sel:pauseStateSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe PauseStateScheduleActionSettings
$sel:motionGraphicsImageDeactivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsDeactivateScheduleActionSettings
$sel:motionGraphicsImageActivateSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe MotionGraphicsActivateScheduleActionSettings
$sel:inputSwitchSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputSwitchScheduleActionSettings
$sel:inputPrepareSettings:ScheduleActionSettings' :: ScheduleActionSettings -> Maybe InputPrepareScheduleActionSettings
$sel:hlsTimedMetadataSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsTimedMetadataScheduleActionSettings
$sel:hlsId3SegmentTaggingSettings:ScheduleActionSettings' :: ScheduleActionSettings
-> Maybe HlsId3SegmentTaggingScheduleActionSettings
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"hlsId3SegmentTaggingSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HlsId3SegmentTaggingScheduleActionSettings
hlsId3SegmentTaggingSettings,
            (Key
"hlsTimedMetadataSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HlsTimedMetadataScheduleActionSettings
hlsTimedMetadataSettings,
            (Key
"inputPrepareSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe InputPrepareScheduleActionSettings
inputPrepareSettings,
            (Key
"inputSwitchSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe InputSwitchScheduleActionSettings
inputSwitchSettings,
            (Key
"motionGraphicsImageActivateSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MotionGraphicsActivateScheduleActionSettings
motionGraphicsImageActivateSettings,
            (Key
"motionGraphicsImageDeactivateSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MotionGraphicsDeactivateScheduleActionSettings
motionGraphicsImageDeactivateSettings,
            (Key
"pauseStateSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PauseStateScheduleActionSettings
pauseStateSettings,
            (Key
"scte35InputSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte35InputScheduleActionSettings
scte35InputSettings,
            (Key
"scte35ReturnToNetworkSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte35ReturnToNetworkScheduleActionSettings
scte35ReturnToNetworkSettings,
            (Key
"scte35SpliceInsertSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte35SpliceInsertScheduleActionSettings
scte35SpliceInsertSettings,
            (Key
"scte35TimeSignalSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte35TimeSignalScheduleActionSettings
scte35TimeSignalSettings,
            (Key
"staticImageActivateSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe StaticImageActivateScheduleActionSettings
staticImageActivateSettings,
            (Key
"staticImageDeactivateSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe StaticImageDeactivateScheduleActionSettings
staticImageDeactivateSettings
          ]
      )