{-# 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.ECS.PutAccountSettingDefault
(
PutAccountSettingDefault (..),
newPutAccountSettingDefault,
putAccountSettingDefault_name,
putAccountSettingDefault_value,
PutAccountSettingDefaultResponse (..),
newPutAccountSettingDefaultResponse,
putAccountSettingDefaultResponse_setting,
putAccountSettingDefaultResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ECS.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data PutAccountSettingDefault = PutAccountSettingDefault'
{
PutAccountSettingDefault -> SettingName
name :: SettingName,
PutAccountSettingDefault -> Text
value :: Prelude.Text
}
deriving (PutAccountSettingDefault -> PutAccountSettingDefault -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutAccountSettingDefault -> PutAccountSettingDefault -> Bool
$c/= :: PutAccountSettingDefault -> PutAccountSettingDefault -> Bool
== :: PutAccountSettingDefault -> PutAccountSettingDefault -> Bool
$c== :: PutAccountSettingDefault -> PutAccountSettingDefault -> Bool
Prelude.Eq, ReadPrec [PutAccountSettingDefault]
ReadPrec PutAccountSettingDefault
Int -> ReadS PutAccountSettingDefault
ReadS [PutAccountSettingDefault]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutAccountSettingDefault]
$creadListPrec :: ReadPrec [PutAccountSettingDefault]
readPrec :: ReadPrec PutAccountSettingDefault
$creadPrec :: ReadPrec PutAccountSettingDefault
readList :: ReadS [PutAccountSettingDefault]
$creadList :: ReadS [PutAccountSettingDefault]
readsPrec :: Int -> ReadS PutAccountSettingDefault
$creadsPrec :: Int -> ReadS PutAccountSettingDefault
Prelude.Read, Int -> PutAccountSettingDefault -> ShowS
[PutAccountSettingDefault] -> ShowS
PutAccountSettingDefault -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutAccountSettingDefault] -> ShowS
$cshowList :: [PutAccountSettingDefault] -> ShowS
show :: PutAccountSettingDefault -> String
$cshow :: PutAccountSettingDefault -> String
showsPrec :: Int -> PutAccountSettingDefault -> ShowS
$cshowsPrec :: Int -> PutAccountSettingDefault -> ShowS
Prelude.Show, forall x.
Rep PutAccountSettingDefault x -> PutAccountSettingDefault
forall x.
PutAccountSettingDefault -> Rep PutAccountSettingDefault x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutAccountSettingDefault x -> PutAccountSettingDefault
$cfrom :: forall x.
PutAccountSettingDefault -> Rep PutAccountSettingDefault x
Prelude.Generic)
newPutAccountSettingDefault ::
SettingName ->
Prelude.Text ->
PutAccountSettingDefault
newPutAccountSettingDefault :: SettingName -> Text -> PutAccountSettingDefault
newPutAccountSettingDefault SettingName
pName_ Text
pValue_ =
PutAccountSettingDefault'
{ $sel:name:PutAccountSettingDefault' :: SettingName
name = SettingName
pName_,
$sel:value:PutAccountSettingDefault' :: Text
value = Text
pValue_
}
putAccountSettingDefault_name :: Lens.Lens' PutAccountSettingDefault SettingName
putAccountSettingDefault_name :: Lens' PutAccountSettingDefault SettingName
putAccountSettingDefault_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutAccountSettingDefault' {SettingName
name :: SettingName
$sel:name:PutAccountSettingDefault' :: PutAccountSettingDefault -> SettingName
name} -> SettingName
name) (\s :: PutAccountSettingDefault
s@PutAccountSettingDefault' {} SettingName
a -> PutAccountSettingDefault
s {$sel:name:PutAccountSettingDefault' :: SettingName
name = SettingName
a} :: PutAccountSettingDefault)
putAccountSettingDefault_value :: Lens.Lens' PutAccountSettingDefault Prelude.Text
putAccountSettingDefault_value :: Lens' PutAccountSettingDefault Text
putAccountSettingDefault_value = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutAccountSettingDefault' {Text
value :: Text
$sel:value:PutAccountSettingDefault' :: PutAccountSettingDefault -> Text
value} -> Text
value) (\s :: PutAccountSettingDefault
s@PutAccountSettingDefault' {} Text
a -> PutAccountSettingDefault
s {$sel:value:PutAccountSettingDefault' :: Text
value = Text
a} :: PutAccountSettingDefault)
instance Core.AWSRequest PutAccountSettingDefault where
type
AWSResponse PutAccountSettingDefault =
PutAccountSettingDefaultResponse
request :: (Service -> Service)
-> PutAccountSettingDefault -> Request PutAccountSettingDefault
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 PutAccountSettingDefault
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse PutAccountSettingDefault)))
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 Setting -> Int -> PutAccountSettingDefaultResponse
PutAccountSettingDefaultResponse'
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
"setting")
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 PutAccountSettingDefault where
hashWithSalt :: Int -> PutAccountSettingDefault -> Int
hashWithSalt Int
_salt PutAccountSettingDefault' {Text
SettingName
value :: Text
name :: SettingName
$sel:value:PutAccountSettingDefault' :: PutAccountSettingDefault -> Text
$sel:name:PutAccountSettingDefault' :: PutAccountSettingDefault -> SettingName
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` SettingName
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
value
instance Prelude.NFData PutAccountSettingDefault where
rnf :: PutAccountSettingDefault -> ()
rnf PutAccountSettingDefault' {Text
SettingName
value :: Text
name :: SettingName
$sel:value:PutAccountSettingDefault' :: PutAccountSettingDefault -> Text
$sel:name:PutAccountSettingDefault' :: PutAccountSettingDefault -> SettingName
..} =
forall a. NFData a => a -> ()
Prelude.rnf SettingName
name seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
value
instance Data.ToHeaders PutAccountSettingDefault where
toHeaders :: PutAccountSettingDefault -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"AmazonEC2ContainerServiceV20141113.PutAccountSettingDefault" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON PutAccountSettingDefault where
toJSON :: PutAccountSettingDefault -> Value
toJSON PutAccountSettingDefault' {Text
SettingName
value :: Text
name :: SettingName
$sel:value:PutAccountSettingDefault' :: PutAccountSettingDefault -> Text
$sel:name:PutAccountSettingDefault' :: PutAccountSettingDefault -> SettingName
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"name" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= SettingName
name),
forall a. a -> Maybe a
Prelude.Just (Key
"value" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
value)
]
)
instance Data.ToPath PutAccountSettingDefault where
toPath :: PutAccountSettingDefault -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery PutAccountSettingDefault where
toQuery :: PutAccountSettingDefault -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data PutAccountSettingDefaultResponse = PutAccountSettingDefaultResponse'
{
PutAccountSettingDefaultResponse -> Maybe Setting
setting :: Prelude.Maybe Setting,
PutAccountSettingDefaultResponse -> Int
httpStatus :: Prelude.Int
}
deriving (PutAccountSettingDefaultResponse
-> PutAccountSettingDefaultResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutAccountSettingDefaultResponse
-> PutAccountSettingDefaultResponse -> Bool
$c/= :: PutAccountSettingDefaultResponse
-> PutAccountSettingDefaultResponse -> Bool
== :: PutAccountSettingDefaultResponse
-> PutAccountSettingDefaultResponse -> Bool
$c== :: PutAccountSettingDefaultResponse
-> PutAccountSettingDefaultResponse -> Bool
Prelude.Eq, ReadPrec [PutAccountSettingDefaultResponse]
ReadPrec PutAccountSettingDefaultResponse
Int -> ReadS PutAccountSettingDefaultResponse
ReadS [PutAccountSettingDefaultResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutAccountSettingDefaultResponse]
$creadListPrec :: ReadPrec [PutAccountSettingDefaultResponse]
readPrec :: ReadPrec PutAccountSettingDefaultResponse
$creadPrec :: ReadPrec PutAccountSettingDefaultResponse
readList :: ReadS [PutAccountSettingDefaultResponse]
$creadList :: ReadS [PutAccountSettingDefaultResponse]
readsPrec :: Int -> ReadS PutAccountSettingDefaultResponse
$creadsPrec :: Int -> ReadS PutAccountSettingDefaultResponse
Prelude.Read, Int -> PutAccountSettingDefaultResponse -> ShowS
[PutAccountSettingDefaultResponse] -> ShowS
PutAccountSettingDefaultResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutAccountSettingDefaultResponse] -> ShowS
$cshowList :: [PutAccountSettingDefaultResponse] -> ShowS
show :: PutAccountSettingDefaultResponse -> String
$cshow :: PutAccountSettingDefaultResponse -> String
showsPrec :: Int -> PutAccountSettingDefaultResponse -> ShowS
$cshowsPrec :: Int -> PutAccountSettingDefaultResponse -> ShowS
Prelude.Show, forall x.
Rep PutAccountSettingDefaultResponse x
-> PutAccountSettingDefaultResponse
forall x.
PutAccountSettingDefaultResponse
-> Rep PutAccountSettingDefaultResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutAccountSettingDefaultResponse x
-> PutAccountSettingDefaultResponse
$cfrom :: forall x.
PutAccountSettingDefaultResponse
-> Rep PutAccountSettingDefaultResponse x
Prelude.Generic)
newPutAccountSettingDefaultResponse ::
Prelude.Int ->
PutAccountSettingDefaultResponse
newPutAccountSettingDefaultResponse :: Int -> PutAccountSettingDefaultResponse
newPutAccountSettingDefaultResponse Int
pHttpStatus_ =
PutAccountSettingDefaultResponse'
{ $sel:setting:PutAccountSettingDefaultResponse' :: Maybe Setting
setting =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:PutAccountSettingDefaultResponse' :: Int
httpStatus = Int
pHttpStatus_
}
putAccountSettingDefaultResponse_setting :: Lens.Lens' PutAccountSettingDefaultResponse (Prelude.Maybe Setting)
putAccountSettingDefaultResponse_setting :: Lens' PutAccountSettingDefaultResponse (Maybe Setting)
putAccountSettingDefaultResponse_setting = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutAccountSettingDefaultResponse' {Maybe Setting
setting :: Maybe Setting
$sel:setting:PutAccountSettingDefaultResponse' :: PutAccountSettingDefaultResponse -> Maybe Setting
setting} -> Maybe Setting
setting) (\s :: PutAccountSettingDefaultResponse
s@PutAccountSettingDefaultResponse' {} Maybe Setting
a -> PutAccountSettingDefaultResponse
s {$sel:setting:PutAccountSettingDefaultResponse' :: Maybe Setting
setting = Maybe Setting
a} :: PutAccountSettingDefaultResponse)
putAccountSettingDefaultResponse_httpStatus :: Lens.Lens' PutAccountSettingDefaultResponse Prelude.Int
putAccountSettingDefaultResponse_httpStatus :: Lens' PutAccountSettingDefaultResponse Int
putAccountSettingDefaultResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutAccountSettingDefaultResponse' {Int
httpStatus :: Int
$sel:httpStatus:PutAccountSettingDefaultResponse' :: PutAccountSettingDefaultResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: PutAccountSettingDefaultResponse
s@PutAccountSettingDefaultResponse' {} Int
a -> PutAccountSettingDefaultResponse
s {$sel:httpStatus:PutAccountSettingDefaultResponse' :: Int
httpStatus = Int
a} :: PutAccountSettingDefaultResponse)
instance
Prelude.NFData
PutAccountSettingDefaultResponse
where
rnf :: PutAccountSettingDefaultResponse -> ()
rnf PutAccountSettingDefaultResponse' {Int
Maybe Setting
httpStatus :: Int
setting :: Maybe Setting
$sel:httpStatus:PutAccountSettingDefaultResponse' :: PutAccountSettingDefaultResponse -> Int
$sel:setting:PutAccountSettingDefaultResponse' :: PutAccountSettingDefaultResponse -> Maybe Setting
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Setting
setting
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus