{-# 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.SESV2.PutConfigurationSetReputationOptions
(
PutConfigurationSetReputationOptions (..),
newPutConfigurationSetReputationOptions,
putConfigurationSetReputationOptions_reputationMetricsEnabled,
putConfigurationSetReputationOptions_configurationSetName,
PutConfigurationSetReputationOptionsResponse (..),
newPutConfigurationSetReputationOptionsResponse,
putConfigurationSetReputationOptionsResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.SESV2.Types
data PutConfigurationSetReputationOptions = PutConfigurationSetReputationOptions'
{
PutConfigurationSetReputationOptions -> Maybe Bool
reputationMetricsEnabled :: Prelude.Maybe Prelude.Bool,
PutConfigurationSetReputationOptions -> Text
configurationSetName :: Prelude.Text
}
deriving (PutConfigurationSetReputationOptions
-> PutConfigurationSetReputationOptions -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutConfigurationSetReputationOptions
-> PutConfigurationSetReputationOptions -> Bool
$c/= :: PutConfigurationSetReputationOptions
-> PutConfigurationSetReputationOptions -> Bool
== :: PutConfigurationSetReputationOptions
-> PutConfigurationSetReputationOptions -> Bool
$c== :: PutConfigurationSetReputationOptions
-> PutConfigurationSetReputationOptions -> Bool
Prelude.Eq, ReadPrec [PutConfigurationSetReputationOptions]
ReadPrec PutConfigurationSetReputationOptions
Int -> ReadS PutConfigurationSetReputationOptions
ReadS [PutConfigurationSetReputationOptions]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutConfigurationSetReputationOptions]
$creadListPrec :: ReadPrec [PutConfigurationSetReputationOptions]
readPrec :: ReadPrec PutConfigurationSetReputationOptions
$creadPrec :: ReadPrec PutConfigurationSetReputationOptions
readList :: ReadS [PutConfigurationSetReputationOptions]
$creadList :: ReadS [PutConfigurationSetReputationOptions]
readsPrec :: Int -> ReadS PutConfigurationSetReputationOptions
$creadsPrec :: Int -> ReadS PutConfigurationSetReputationOptions
Prelude.Read, Int -> PutConfigurationSetReputationOptions -> ShowS
[PutConfigurationSetReputationOptions] -> ShowS
PutConfigurationSetReputationOptions -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutConfigurationSetReputationOptions] -> ShowS
$cshowList :: [PutConfigurationSetReputationOptions] -> ShowS
show :: PutConfigurationSetReputationOptions -> String
$cshow :: PutConfigurationSetReputationOptions -> String
showsPrec :: Int -> PutConfigurationSetReputationOptions -> ShowS
$cshowsPrec :: Int -> PutConfigurationSetReputationOptions -> ShowS
Prelude.Show, forall x.
Rep PutConfigurationSetReputationOptions x
-> PutConfigurationSetReputationOptions
forall x.
PutConfigurationSetReputationOptions
-> Rep PutConfigurationSetReputationOptions x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutConfigurationSetReputationOptions x
-> PutConfigurationSetReputationOptions
$cfrom :: forall x.
PutConfigurationSetReputationOptions
-> Rep PutConfigurationSetReputationOptions x
Prelude.Generic)
newPutConfigurationSetReputationOptions ::
Prelude.Text ->
PutConfigurationSetReputationOptions
newPutConfigurationSetReputationOptions :: Text -> PutConfigurationSetReputationOptions
newPutConfigurationSetReputationOptions
Text
pConfigurationSetName_ =
PutConfigurationSetReputationOptions'
{ $sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: Maybe Bool
reputationMetricsEnabled =
forall a. Maybe a
Prelude.Nothing,
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: Text
configurationSetName =
Text
pConfigurationSetName_
}
putConfigurationSetReputationOptions_reputationMetricsEnabled :: Lens.Lens' PutConfigurationSetReputationOptions (Prelude.Maybe Prelude.Bool)
putConfigurationSetReputationOptions_reputationMetricsEnabled :: Lens' PutConfigurationSetReputationOptions (Maybe Bool)
putConfigurationSetReputationOptions_reputationMetricsEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutConfigurationSetReputationOptions' {Maybe Bool
reputationMetricsEnabled :: Maybe Bool
$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Maybe Bool
reputationMetricsEnabled} -> Maybe Bool
reputationMetricsEnabled) (\s :: PutConfigurationSetReputationOptions
s@PutConfigurationSetReputationOptions' {} Maybe Bool
a -> PutConfigurationSetReputationOptions
s {$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: Maybe Bool
reputationMetricsEnabled = Maybe Bool
a} :: PutConfigurationSetReputationOptions)
putConfigurationSetReputationOptions_configurationSetName :: Lens.Lens' PutConfigurationSetReputationOptions Prelude.Text
putConfigurationSetReputationOptions_configurationSetName :: Lens' PutConfigurationSetReputationOptions Text
putConfigurationSetReputationOptions_configurationSetName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutConfigurationSetReputationOptions' {Text
configurationSetName :: Text
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Text
configurationSetName} -> Text
configurationSetName) (\s :: PutConfigurationSetReputationOptions
s@PutConfigurationSetReputationOptions' {} Text
a -> PutConfigurationSetReputationOptions
s {$sel:configurationSetName:PutConfigurationSetReputationOptions' :: Text
configurationSetName = Text
a} :: PutConfigurationSetReputationOptions)
instance
Core.AWSRequest
PutConfigurationSetReputationOptions
where
type
AWSResponse PutConfigurationSetReputationOptions =
PutConfigurationSetReputationOptionsResponse
request :: (Service -> Service)
-> PutConfigurationSetReputationOptions
-> Request PutConfigurationSetReputationOptions
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.putJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy PutConfigurationSetReputationOptions
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse PutConfigurationSetReputationOptions)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> PutConfigurationSetReputationOptionsResponse
PutConfigurationSetReputationOptionsResponse'
forall (f :: * -> *) a b. Functor 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
PutConfigurationSetReputationOptions
where
hashWithSalt :: Int -> PutConfigurationSetReputationOptions -> Int
hashWithSalt
Int
_salt
PutConfigurationSetReputationOptions' {Maybe Bool
Text
configurationSetName :: Text
reputationMetricsEnabled :: Maybe Bool
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Text
$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
reputationMetricsEnabled
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
configurationSetName
instance
Prelude.NFData
PutConfigurationSetReputationOptions
where
rnf :: PutConfigurationSetReputationOptions -> ()
rnf PutConfigurationSetReputationOptions' {Maybe Bool
Text
configurationSetName :: Text
reputationMetricsEnabled :: Maybe Bool
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Text
$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
reputationMetricsEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
configurationSetName
instance
Data.ToHeaders
PutConfigurationSetReputationOptions
where
toHeaders :: PutConfigurationSetReputationOptions -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance
Data.ToJSON
PutConfigurationSetReputationOptions
where
toJSON :: PutConfigurationSetReputationOptions -> Value
toJSON PutConfigurationSetReputationOptions' {Maybe Bool
Text
configurationSetName :: Text
reputationMetricsEnabled :: Maybe Bool
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Text
$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Maybe Bool
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"ReputationMetricsEnabled" 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 Bool
reputationMetricsEnabled
]
)
instance
Data.ToPath
PutConfigurationSetReputationOptions
where
toPath :: PutConfigurationSetReputationOptions -> ByteString
toPath PutConfigurationSetReputationOptions' {Maybe Bool
Text
configurationSetName :: Text
reputationMetricsEnabled :: Maybe Bool
$sel:configurationSetName:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Text
$sel:reputationMetricsEnabled:PutConfigurationSetReputationOptions' :: PutConfigurationSetReputationOptions -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/v2/email/configuration-sets/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
configurationSetName,
ByteString
"/reputation-options"
]
instance
Data.ToQuery
PutConfigurationSetReputationOptions
where
toQuery :: PutConfigurationSetReputationOptions -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data PutConfigurationSetReputationOptionsResponse = PutConfigurationSetReputationOptionsResponse'
{
PutConfigurationSetReputationOptionsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (PutConfigurationSetReputationOptionsResponse
-> PutConfigurationSetReputationOptionsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutConfigurationSetReputationOptionsResponse
-> PutConfigurationSetReputationOptionsResponse -> Bool
$c/= :: PutConfigurationSetReputationOptionsResponse
-> PutConfigurationSetReputationOptionsResponse -> Bool
== :: PutConfigurationSetReputationOptionsResponse
-> PutConfigurationSetReputationOptionsResponse -> Bool
$c== :: PutConfigurationSetReputationOptionsResponse
-> PutConfigurationSetReputationOptionsResponse -> Bool
Prelude.Eq, ReadPrec [PutConfigurationSetReputationOptionsResponse]
ReadPrec PutConfigurationSetReputationOptionsResponse
Int -> ReadS PutConfigurationSetReputationOptionsResponse
ReadS [PutConfigurationSetReputationOptionsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutConfigurationSetReputationOptionsResponse]
$creadListPrec :: ReadPrec [PutConfigurationSetReputationOptionsResponse]
readPrec :: ReadPrec PutConfigurationSetReputationOptionsResponse
$creadPrec :: ReadPrec PutConfigurationSetReputationOptionsResponse
readList :: ReadS [PutConfigurationSetReputationOptionsResponse]
$creadList :: ReadS [PutConfigurationSetReputationOptionsResponse]
readsPrec :: Int -> ReadS PutConfigurationSetReputationOptionsResponse
$creadsPrec :: Int -> ReadS PutConfigurationSetReputationOptionsResponse
Prelude.Read, Int -> PutConfigurationSetReputationOptionsResponse -> ShowS
[PutConfigurationSetReputationOptionsResponse] -> ShowS
PutConfigurationSetReputationOptionsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutConfigurationSetReputationOptionsResponse] -> ShowS
$cshowList :: [PutConfigurationSetReputationOptionsResponse] -> ShowS
show :: PutConfigurationSetReputationOptionsResponse -> String
$cshow :: PutConfigurationSetReputationOptionsResponse -> String
showsPrec :: Int -> PutConfigurationSetReputationOptionsResponse -> ShowS
$cshowsPrec :: Int -> PutConfigurationSetReputationOptionsResponse -> ShowS
Prelude.Show, forall x.
Rep PutConfigurationSetReputationOptionsResponse x
-> PutConfigurationSetReputationOptionsResponse
forall x.
PutConfigurationSetReputationOptionsResponse
-> Rep PutConfigurationSetReputationOptionsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutConfigurationSetReputationOptionsResponse x
-> PutConfigurationSetReputationOptionsResponse
$cfrom :: forall x.
PutConfigurationSetReputationOptionsResponse
-> Rep PutConfigurationSetReputationOptionsResponse x
Prelude.Generic)
newPutConfigurationSetReputationOptionsResponse ::
Prelude.Int ->
PutConfigurationSetReputationOptionsResponse
newPutConfigurationSetReputationOptionsResponse :: Int -> PutConfigurationSetReputationOptionsResponse
newPutConfigurationSetReputationOptionsResponse
Int
pHttpStatus_ =
PutConfigurationSetReputationOptionsResponse'
{ $sel:httpStatus:PutConfigurationSetReputationOptionsResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
putConfigurationSetReputationOptionsResponse_httpStatus :: Lens.Lens' PutConfigurationSetReputationOptionsResponse Prelude.Int
putConfigurationSetReputationOptionsResponse_httpStatus :: Lens' PutConfigurationSetReputationOptionsResponse Int
putConfigurationSetReputationOptionsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutConfigurationSetReputationOptionsResponse' {Int
httpStatus :: Int
$sel:httpStatus:PutConfigurationSetReputationOptionsResponse' :: PutConfigurationSetReputationOptionsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: PutConfigurationSetReputationOptionsResponse
s@PutConfigurationSetReputationOptionsResponse' {} Int
a -> PutConfigurationSetReputationOptionsResponse
s {$sel:httpStatus:PutConfigurationSetReputationOptionsResponse' :: Int
httpStatus = Int
a} :: PutConfigurationSetReputationOptionsResponse)
instance
Prelude.NFData
PutConfigurationSetReputationOptionsResponse
where
rnf :: PutConfigurationSetReputationOptionsResponse -> ()
rnf PutConfigurationSetReputationOptionsResponse' {Int
httpStatus :: Int
$sel:httpStatus:PutConfigurationSetReputationOptionsResponse' :: PutConfigurationSetReputationOptionsResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus