{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.ElasticTranscoder.CreatePreset
(
CreatePreset (..),
newCreatePreset,
createPreset_audio,
createPreset_description,
createPreset_thumbnails,
createPreset_video,
createPreset_name,
createPreset_container,
CreatePresetResponse (..),
newCreatePresetResponse,
createPresetResponse_preset,
createPresetResponse_warning,
createPresetResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ElasticTranscoder.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data CreatePreset = CreatePreset'
{
CreatePreset -> Maybe AudioParameters
audio :: Prelude.Maybe AudioParameters,
CreatePreset -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
CreatePreset -> Maybe Thumbnails
thumbnails :: Prelude.Maybe Thumbnails,
CreatePreset -> Maybe VideoParameters
video :: Prelude.Maybe VideoParameters,
CreatePreset -> Text
name :: Prelude.Text,
CreatePreset -> Text
container :: Prelude.Text
}
deriving (CreatePreset -> CreatePreset -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreatePreset -> CreatePreset -> Bool
$c/= :: CreatePreset -> CreatePreset -> Bool
== :: CreatePreset -> CreatePreset -> Bool
$c== :: CreatePreset -> CreatePreset -> Bool
Prelude.Eq, ReadPrec [CreatePreset]
ReadPrec CreatePreset
Int -> ReadS CreatePreset
ReadS [CreatePreset]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreatePreset]
$creadListPrec :: ReadPrec [CreatePreset]
readPrec :: ReadPrec CreatePreset
$creadPrec :: ReadPrec CreatePreset
readList :: ReadS [CreatePreset]
$creadList :: ReadS [CreatePreset]
readsPrec :: Int -> ReadS CreatePreset
$creadsPrec :: Int -> ReadS CreatePreset
Prelude.Read, Int -> CreatePreset -> ShowS
[CreatePreset] -> ShowS
CreatePreset -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreatePreset] -> ShowS
$cshowList :: [CreatePreset] -> ShowS
show :: CreatePreset -> String
$cshow :: CreatePreset -> String
showsPrec :: Int -> CreatePreset -> ShowS
$cshowsPrec :: Int -> CreatePreset -> ShowS
Prelude.Show, forall x. Rep CreatePreset x -> CreatePreset
forall x. CreatePreset -> Rep CreatePreset x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreatePreset x -> CreatePreset
$cfrom :: forall x. CreatePreset -> Rep CreatePreset x
Prelude.Generic)
newCreatePreset ::
Prelude.Text ->
Prelude.Text ->
CreatePreset
newCreatePreset :: Text -> Text -> CreatePreset
newCreatePreset Text
pName_ Text
pContainer_ =
CreatePreset'
{ $sel:audio:CreatePreset' :: Maybe AudioParameters
audio = forall a. Maybe a
Prelude.Nothing,
$sel:description:CreatePreset' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:thumbnails:CreatePreset' :: Maybe Thumbnails
thumbnails = forall a. Maybe a
Prelude.Nothing,
$sel:video:CreatePreset' :: Maybe VideoParameters
video = forall a. Maybe a
Prelude.Nothing,
$sel:name:CreatePreset' :: Text
name = Text
pName_,
$sel:container:CreatePreset' :: Text
container = Text
pContainer_
}
createPreset_audio :: Lens.Lens' CreatePreset (Prelude.Maybe AudioParameters)
createPreset_audio :: Lens' CreatePreset (Maybe AudioParameters)
createPreset_audio = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Maybe AudioParameters
audio :: Maybe AudioParameters
$sel:audio:CreatePreset' :: CreatePreset -> Maybe AudioParameters
audio} -> Maybe AudioParameters
audio) (\s :: CreatePreset
s@CreatePreset' {} Maybe AudioParameters
a -> CreatePreset
s {$sel:audio:CreatePreset' :: Maybe AudioParameters
audio = Maybe AudioParameters
a} :: CreatePreset)
createPreset_description :: Lens.Lens' CreatePreset (Prelude.Maybe Prelude.Text)
createPreset_description :: Lens' CreatePreset (Maybe Text)
createPreset_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Maybe Text
description :: Maybe Text
$sel:description:CreatePreset' :: CreatePreset -> Maybe Text
description} -> Maybe Text
description) (\s :: CreatePreset
s@CreatePreset' {} Maybe Text
a -> CreatePreset
s {$sel:description:CreatePreset' :: Maybe Text
description = Maybe Text
a} :: CreatePreset)
createPreset_thumbnails :: Lens.Lens' CreatePreset (Prelude.Maybe Thumbnails)
createPreset_thumbnails :: Lens' CreatePreset (Maybe Thumbnails)
createPreset_thumbnails = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Maybe Thumbnails
thumbnails :: Maybe Thumbnails
$sel:thumbnails:CreatePreset' :: CreatePreset -> Maybe Thumbnails
thumbnails} -> Maybe Thumbnails
thumbnails) (\s :: CreatePreset
s@CreatePreset' {} Maybe Thumbnails
a -> CreatePreset
s {$sel:thumbnails:CreatePreset' :: Maybe Thumbnails
thumbnails = Maybe Thumbnails
a} :: CreatePreset)
createPreset_video :: Lens.Lens' CreatePreset (Prelude.Maybe VideoParameters)
createPreset_video :: Lens' CreatePreset (Maybe VideoParameters)
createPreset_video = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Maybe VideoParameters
video :: Maybe VideoParameters
$sel:video:CreatePreset' :: CreatePreset -> Maybe VideoParameters
video} -> Maybe VideoParameters
video) (\s :: CreatePreset
s@CreatePreset' {} Maybe VideoParameters
a -> CreatePreset
s {$sel:video:CreatePreset' :: Maybe VideoParameters
video = Maybe VideoParameters
a} :: CreatePreset)
createPreset_name :: Lens.Lens' CreatePreset Prelude.Text
createPreset_name :: Lens' CreatePreset Text
createPreset_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Text
name :: Text
$sel:name:CreatePreset' :: CreatePreset -> Text
name} -> Text
name) (\s :: CreatePreset
s@CreatePreset' {} Text
a -> CreatePreset
s {$sel:name:CreatePreset' :: Text
name = Text
a} :: CreatePreset)
createPreset_container :: Lens.Lens' CreatePreset Prelude.Text
createPreset_container :: Lens' CreatePreset Text
createPreset_container = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePreset' {Text
container :: Text
$sel:container:CreatePreset' :: CreatePreset -> Text
container} -> Text
container) (\s :: CreatePreset
s@CreatePreset' {} Text
a -> CreatePreset
s {$sel:container:CreatePreset' :: Text
container = Text
a} :: CreatePreset)
instance Core.AWSRequest CreatePreset where
type AWSResponse CreatePreset = CreatePresetResponse
request :: (Service -> Service) -> CreatePreset -> Request CreatePreset
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy CreatePreset
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse CreatePreset)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe Preset -> Maybe Text -> Int -> CreatePresetResponse
CreatePresetResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"Preset")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"Warning")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable CreatePreset where
hashWithSalt :: Int -> CreatePreset -> Int
hashWithSalt Int
_salt CreatePreset' {Maybe Text
Maybe AudioParameters
Maybe Thumbnails
Maybe VideoParameters
Text
container :: Text
name :: Text
video :: Maybe VideoParameters
thumbnails :: Maybe Thumbnails
description :: Maybe Text
audio :: Maybe AudioParameters
$sel:container:CreatePreset' :: CreatePreset -> Text
$sel:name:CreatePreset' :: CreatePreset -> Text
$sel:video:CreatePreset' :: CreatePreset -> Maybe VideoParameters
$sel:thumbnails:CreatePreset' :: CreatePreset -> Maybe Thumbnails
$sel:description:CreatePreset' :: CreatePreset -> Maybe Text
$sel:audio:CreatePreset' :: CreatePreset -> Maybe AudioParameters
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AudioParameters
audio
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Thumbnails
thumbnails
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe VideoParameters
video
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
container
instance Prelude.NFData CreatePreset where
rnf :: CreatePreset -> ()
rnf CreatePreset' {Maybe Text
Maybe AudioParameters
Maybe Thumbnails
Maybe VideoParameters
Text
container :: Text
name :: Text
video :: Maybe VideoParameters
thumbnails :: Maybe Thumbnails
description :: Maybe Text
audio :: Maybe AudioParameters
$sel:container:CreatePreset' :: CreatePreset -> Text
$sel:name:CreatePreset' :: CreatePreset -> Text
$sel:video:CreatePreset' :: CreatePreset -> Maybe VideoParameters
$sel:thumbnails:CreatePreset' :: CreatePreset -> Maybe Thumbnails
$sel:description:CreatePreset' :: CreatePreset -> Maybe Text
$sel:audio:CreatePreset' :: CreatePreset -> Maybe AudioParameters
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe AudioParameters
audio
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Thumbnails
thumbnails
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe VideoParameters
video
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
container
instance Data.ToHeaders CreatePreset where
toHeaders :: CreatePreset -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON CreatePreset where
toJSON :: CreatePreset -> Value
toJSON CreatePreset' {Maybe Text
Maybe AudioParameters
Maybe Thumbnails
Maybe VideoParameters
Text
container :: Text
name :: Text
video :: Maybe VideoParameters
thumbnails :: Maybe Thumbnails
description :: Maybe Text
audio :: Maybe AudioParameters
$sel:container:CreatePreset' :: CreatePreset -> Text
$sel:name:CreatePreset' :: CreatePreset -> Text
$sel:video:CreatePreset' :: CreatePreset -> Maybe VideoParameters
$sel:thumbnails:CreatePreset' :: CreatePreset -> Maybe Thumbnails
$sel:description:CreatePreset' :: CreatePreset -> Maybe Text
$sel:audio:CreatePreset' :: CreatePreset -> Maybe AudioParameters
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"Audio" 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 AudioParameters
audio,
(Key
"Description" 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 Text
description,
(Key
"Thumbnails" 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 Thumbnails
thumbnails,
(Key
"Video" 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 VideoParameters
video,
forall a. a -> Maybe a
Prelude.Just (Key
"Name" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
name),
forall a. a -> Maybe a
Prelude.Just (Key
"Container" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
container)
]
)
instance Data.ToPath CreatePreset where
toPath :: CreatePreset -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/2012-09-25/presets"
instance Data.ToQuery CreatePreset where
toQuery :: CreatePreset -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data CreatePresetResponse = CreatePresetResponse'
{
CreatePresetResponse -> Maybe Preset
preset :: Prelude.Maybe Preset,
CreatePresetResponse -> Maybe Text
warning :: Prelude.Maybe Prelude.Text,
CreatePresetResponse -> Int
httpStatus :: Prelude.Int
}
deriving (CreatePresetResponse -> CreatePresetResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreatePresetResponse -> CreatePresetResponse -> Bool
$c/= :: CreatePresetResponse -> CreatePresetResponse -> Bool
== :: CreatePresetResponse -> CreatePresetResponse -> Bool
$c== :: CreatePresetResponse -> CreatePresetResponse -> Bool
Prelude.Eq, ReadPrec [CreatePresetResponse]
ReadPrec CreatePresetResponse
Int -> ReadS CreatePresetResponse
ReadS [CreatePresetResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreatePresetResponse]
$creadListPrec :: ReadPrec [CreatePresetResponse]
readPrec :: ReadPrec CreatePresetResponse
$creadPrec :: ReadPrec CreatePresetResponse
readList :: ReadS [CreatePresetResponse]
$creadList :: ReadS [CreatePresetResponse]
readsPrec :: Int -> ReadS CreatePresetResponse
$creadsPrec :: Int -> ReadS CreatePresetResponse
Prelude.Read, Int -> CreatePresetResponse -> ShowS
[CreatePresetResponse] -> ShowS
CreatePresetResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreatePresetResponse] -> ShowS
$cshowList :: [CreatePresetResponse] -> ShowS
show :: CreatePresetResponse -> String
$cshow :: CreatePresetResponse -> String
showsPrec :: Int -> CreatePresetResponse -> ShowS
$cshowsPrec :: Int -> CreatePresetResponse -> ShowS
Prelude.Show, forall x. Rep CreatePresetResponse x -> CreatePresetResponse
forall x. CreatePresetResponse -> Rep CreatePresetResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreatePresetResponse x -> CreatePresetResponse
$cfrom :: forall x. CreatePresetResponse -> Rep CreatePresetResponse x
Prelude.Generic)
newCreatePresetResponse ::
Prelude.Int ->
CreatePresetResponse
newCreatePresetResponse :: Int -> CreatePresetResponse
newCreatePresetResponse Int
pHttpStatus_ =
CreatePresetResponse'
{ $sel:preset:CreatePresetResponse' :: Maybe Preset
preset = forall a. Maybe a
Prelude.Nothing,
$sel:warning:CreatePresetResponse' :: Maybe Text
warning = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:CreatePresetResponse' :: Int
httpStatus = Int
pHttpStatus_
}
createPresetResponse_preset :: Lens.Lens' CreatePresetResponse (Prelude.Maybe Preset)
createPresetResponse_preset :: Lens' CreatePresetResponse (Maybe Preset)
createPresetResponse_preset = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePresetResponse' {Maybe Preset
preset :: Maybe Preset
$sel:preset:CreatePresetResponse' :: CreatePresetResponse -> Maybe Preset
preset} -> Maybe Preset
preset) (\s :: CreatePresetResponse
s@CreatePresetResponse' {} Maybe Preset
a -> CreatePresetResponse
s {$sel:preset:CreatePresetResponse' :: Maybe Preset
preset = Maybe Preset
a} :: CreatePresetResponse)
createPresetResponse_warning :: Lens.Lens' CreatePresetResponse (Prelude.Maybe Prelude.Text)
createPresetResponse_warning :: Lens' CreatePresetResponse (Maybe Text)
createPresetResponse_warning = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePresetResponse' {Maybe Text
warning :: Maybe Text
$sel:warning:CreatePresetResponse' :: CreatePresetResponse -> Maybe Text
warning} -> Maybe Text
warning) (\s :: CreatePresetResponse
s@CreatePresetResponse' {} Maybe Text
a -> CreatePresetResponse
s {$sel:warning:CreatePresetResponse' :: Maybe Text
warning = Maybe Text
a} :: CreatePresetResponse)
createPresetResponse_httpStatus :: Lens.Lens' CreatePresetResponse Prelude.Int
createPresetResponse_httpStatus :: Lens' CreatePresetResponse Int
createPresetResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreatePresetResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreatePresetResponse' :: CreatePresetResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreatePresetResponse
s@CreatePresetResponse' {} Int
a -> CreatePresetResponse
s {$sel:httpStatus:CreatePresetResponse' :: Int
httpStatus = Int
a} :: CreatePresetResponse)
instance Prelude.NFData CreatePresetResponse where
rnf :: CreatePresetResponse -> ()
rnf CreatePresetResponse' {Int
Maybe Text
Maybe Preset
httpStatus :: Int
warning :: Maybe Text
preset :: Maybe Preset
$sel:httpStatus:CreatePresetResponse' :: CreatePresetResponse -> Int
$sel:warning:CreatePresetResponse' :: CreatePresetResponse -> Maybe Text
$sel:preset:CreatePresetResponse' :: CreatePresetResponse -> Maybe Preset
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Preset
preset
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
warning
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus