stratosphere-0.40.0: library-gen/Stratosphere/ResourceProperties/MediaLiveChannelOutputDestinationSettings.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html
module Stratosphere.ResourceProperties.MediaLiveChannelOutputDestinationSettings where
import Stratosphere.ResourceImports
-- | Full data type definition for MediaLiveChannelOutputDestinationSettings.
-- See 'mediaLiveChannelOutputDestinationSettings' for a more convenient
-- constructor.
data MediaLiveChannelOutputDestinationSettings =
MediaLiveChannelOutputDestinationSettings
{ _mediaLiveChannelOutputDestinationSettingsPasswordParam :: Maybe (Val Text)
, _mediaLiveChannelOutputDestinationSettingsStreamName :: Maybe (Val Text)
, _mediaLiveChannelOutputDestinationSettingsUrl :: Maybe (Val Text)
, _mediaLiveChannelOutputDestinationSettingsUsername :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON MediaLiveChannelOutputDestinationSettings where
toJSON MediaLiveChannelOutputDestinationSettings{..} =
object $
catMaybes
[ fmap (("PasswordParam",) . toJSON) _mediaLiveChannelOutputDestinationSettingsPasswordParam
, fmap (("StreamName",) . toJSON) _mediaLiveChannelOutputDestinationSettingsStreamName
, fmap (("Url",) . toJSON) _mediaLiveChannelOutputDestinationSettingsUrl
, fmap (("Username",) . toJSON) _mediaLiveChannelOutputDestinationSettingsUsername
]
-- | Constructor for 'MediaLiveChannelOutputDestinationSettings' containing
-- required fields as arguments.
mediaLiveChannelOutputDestinationSettings
:: MediaLiveChannelOutputDestinationSettings
mediaLiveChannelOutputDestinationSettings =
MediaLiveChannelOutputDestinationSettings
{ _mediaLiveChannelOutputDestinationSettingsPasswordParam = Nothing
, _mediaLiveChannelOutputDestinationSettingsStreamName = Nothing
, _mediaLiveChannelOutputDestinationSettingsUrl = Nothing
, _mediaLiveChannelOutputDestinationSettingsUsername = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-passwordparam
mlcodsPasswordParam :: Lens' MediaLiveChannelOutputDestinationSettings (Maybe (Val Text))
mlcodsPasswordParam = lens _mediaLiveChannelOutputDestinationSettingsPasswordParam (\s a -> s { _mediaLiveChannelOutputDestinationSettingsPasswordParam = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-streamname
mlcodsStreamName :: Lens' MediaLiveChannelOutputDestinationSettings (Maybe (Val Text))
mlcodsStreamName = lens _mediaLiveChannelOutputDestinationSettingsStreamName (\s a -> s { _mediaLiveChannelOutputDestinationSettingsStreamName = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-url
mlcodsUrl :: Lens' MediaLiveChannelOutputDestinationSettings (Maybe (Val Text))
mlcodsUrl = lens _mediaLiveChannelOutputDestinationSettingsUrl (\s a -> s { _mediaLiveChannelOutputDestinationSettingsUrl = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-username
mlcodsUsername :: Lens' MediaLiveChannelOutputDestinationSettings (Maybe (Val Text))
mlcodsUsername = lens _mediaLiveChannelOutputDestinationSettingsUsername (\s a -> s { _mediaLiveChannelOutputDestinationSettingsUsername = a })