{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.MediaConvert.UpdatePreset
(
updatePreset
, UpdatePreset
, upSettings
, upCategory
, upDescription
, upName
, updatePresetResponse
, UpdatePresetResponse
, uprsPreset
, uprsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MediaConvert.Types
import Network.AWS.MediaConvert.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data UpdatePreset = UpdatePreset'
{ _upSettings :: !(Maybe PresetSettings)
, _upCategory :: !(Maybe Text)
, _upDescription :: !(Maybe Text)
, _upName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updatePreset
:: Text
-> UpdatePreset
updatePreset pName_ =
UpdatePreset'
{ _upSettings = Nothing
, _upCategory = Nothing
, _upDescription = Nothing
, _upName = pName_
}
upSettings :: Lens' UpdatePreset (Maybe PresetSettings)
upSettings = lens _upSettings (\ s a -> s{_upSettings = a})
upCategory :: Lens' UpdatePreset (Maybe Text)
upCategory = lens _upCategory (\ s a -> s{_upCategory = a})
upDescription :: Lens' UpdatePreset (Maybe Text)
upDescription = lens _upDescription (\ s a -> s{_upDescription = a})
upName :: Lens' UpdatePreset Text
upName = lens _upName (\ s a -> s{_upName = a})
instance AWSRequest UpdatePreset where
type Rs UpdatePreset = UpdatePresetResponse
request = putJSON mediaConvert
response
= receiveJSON
(\ s h x ->
UpdatePresetResponse' <$>
(x .?> "preset") <*> (pure (fromEnum s)))
instance Hashable UpdatePreset where
instance NFData UpdatePreset where
instance ToHeaders UpdatePreset where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdatePreset where
toJSON UpdatePreset'{..}
= object
(catMaybes
[("settings" .=) <$> _upSettings,
("category" .=) <$> _upCategory,
("description" .=) <$> _upDescription])
instance ToPath UpdatePreset where
toPath UpdatePreset'{..}
= mconcat ["/2017-08-29/presets/", toBS _upName]
instance ToQuery UpdatePreset where
toQuery = const mempty
data UpdatePresetResponse = UpdatePresetResponse'
{ _uprsPreset :: !(Maybe Preset)
, _uprsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updatePresetResponse
:: Int
-> UpdatePresetResponse
updatePresetResponse pResponseStatus_ =
UpdatePresetResponse'
{_uprsPreset = Nothing, _uprsResponseStatus = pResponseStatus_}
uprsPreset :: Lens' UpdatePresetResponse (Maybe Preset)
uprsPreset = lens _uprsPreset (\ s a -> s{_uprsPreset = a})
uprsResponseStatus :: Lens' UpdatePresetResponse Int
uprsResponseStatus = lens _uprsResponseStatus (\ s a -> s{_uprsResponseStatus = a})
instance NFData UpdatePresetResponse where