{-# 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.SES.GetAccountSendingEnabled
(
GetAccountSendingEnabled (..),
newGetAccountSendingEnabled,
GetAccountSendingEnabledResponse (..),
newGetAccountSendingEnabledResponse,
getAccountSendingEnabledResponse_enabled,
getAccountSendingEnabledResponse_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.SES.Types
data GetAccountSendingEnabled = GetAccountSendingEnabled'
{
}
deriving (GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool
(GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool)
-> (GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool)
-> Eq GetAccountSendingEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool
== :: GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool
$c/= :: GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool
/= :: GetAccountSendingEnabled -> GetAccountSendingEnabled -> Bool
Prelude.Eq, ReadPrec [GetAccountSendingEnabled]
ReadPrec GetAccountSendingEnabled
Int -> ReadS GetAccountSendingEnabled
ReadS [GetAccountSendingEnabled]
(Int -> ReadS GetAccountSendingEnabled)
-> ReadS [GetAccountSendingEnabled]
-> ReadPrec GetAccountSendingEnabled
-> ReadPrec [GetAccountSendingEnabled]
-> Read GetAccountSendingEnabled
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS GetAccountSendingEnabled
readsPrec :: Int -> ReadS GetAccountSendingEnabled
$creadList :: ReadS [GetAccountSendingEnabled]
readList :: ReadS [GetAccountSendingEnabled]
$creadPrec :: ReadPrec GetAccountSendingEnabled
readPrec :: ReadPrec GetAccountSendingEnabled
$creadListPrec :: ReadPrec [GetAccountSendingEnabled]
readListPrec :: ReadPrec [GetAccountSendingEnabled]
Prelude.Read, Int -> GetAccountSendingEnabled -> ShowS
[GetAccountSendingEnabled] -> ShowS
GetAccountSendingEnabled -> String
(Int -> GetAccountSendingEnabled -> ShowS)
-> (GetAccountSendingEnabled -> String)
-> ([GetAccountSendingEnabled] -> ShowS)
-> Show GetAccountSendingEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GetAccountSendingEnabled -> ShowS
showsPrec :: Int -> GetAccountSendingEnabled -> ShowS
$cshow :: GetAccountSendingEnabled -> String
show :: GetAccountSendingEnabled -> String
$cshowList :: [GetAccountSendingEnabled] -> ShowS
showList :: [GetAccountSendingEnabled] -> ShowS
Prelude.Show, (forall x.
GetAccountSendingEnabled -> Rep GetAccountSendingEnabled x)
-> (forall x.
Rep GetAccountSendingEnabled x -> GetAccountSendingEnabled)
-> Generic GetAccountSendingEnabled
forall x.
Rep GetAccountSendingEnabled x -> GetAccountSendingEnabled
forall x.
GetAccountSendingEnabled -> Rep GetAccountSendingEnabled x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
GetAccountSendingEnabled -> Rep GetAccountSendingEnabled x
from :: forall x.
GetAccountSendingEnabled -> Rep GetAccountSendingEnabled x
$cto :: forall x.
Rep GetAccountSendingEnabled x -> GetAccountSendingEnabled
to :: forall x.
Rep GetAccountSendingEnabled x -> GetAccountSendingEnabled
Prelude.Generic)
newGetAccountSendingEnabled ::
GetAccountSendingEnabled
newGetAccountSendingEnabled :: GetAccountSendingEnabled
newGetAccountSendingEnabled =
GetAccountSendingEnabled
GetAccountSendingEnabled'
instance Core.AWSRequest GetAccountSendingEnabled where
type
AWSResponse GetAccountSendingEnabled =
GetAccountSendingEnabledResponse
request :: (Service -> Service)
-> GetAccountSendingEnabled -> Request GetAccountSendingEnabled
request Service -> Service
overrides =
Service
-> GetAccountSendingEnabled -> Request GetAccountSendingEnabled
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetAccountSendingEnabled
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetAccountSendingEnabled)))
response =
Text
-> (Int
-> ResponseHeaders
-> [Node]
-> Either String (AWSResponse GetAccountSendingEnabled))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetAccountSendingEnabled
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetAccountSendingEnabled)))
forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
-> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
Text
"GetAccountSendingEnabledResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe Bool -> Int -> GetAccountSendingEnabledResponse
GetAccountSendingEnabledResponse'
(Maybe Bool -> Int -> GetAccountSendingEnabledResponse)
-> Either String (Maybe Bool)
-> Either String (Int -> GetAccountSendingEnabledResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x [Node] -> Text -> Either String (Maybe Bool)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Enabled")
Either String (Int -> GetAccountSendingEnabledResponse)
-> Either String Int
-> Either String GetAccountSendingEnabledResponse
forall a b.
Either String (a -> b) -> Either String a -> Either String b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall a. a -> Either String a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable GetAccountSendingEnabled where
hashWithSalt :: Int -> GetAccountSendingEnabled -> Int
hashWithSalt Int
_salt GetAccountSendingEnabled
_ =
Int
_salt Int -> () -> Int
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ()
instance Prelude.NFData GetAccountSendingEnabled where
rnf :: GetAccountSendingEnabled -> ()
rnf GetAccountSendingEnabled
_ = ()
instance Data.ToHeaders GetAccountSendingEnabled where
toHeaders :: GetAccountSendingEnabled -> ResponseHeaders
toHeaders = ResponseHeaders -> GetAccountSendingEnabled -> ResponseHeaders
forall a b. a -> b -> a
Prelude.const ResponseHeaders
forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetAccountSendingEnabled where
toPath :: GetAccountSendingEnabled -> ByteString
toPath = ByteString -> GetAccountSendingEnabled -> ByteString
forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GetAccountSendingEnabled where
toQuery :: GetAccountSendingEnabled -> QueryString
toQuery =
QueryString -> GetAccountSendingEnabled -> QueryString
forall a b. a -> b -> a
Prelude.const
( [QueryString] -> QueryString
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
ByteString -> ByteString -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"GetAccountSendingEnabled" :: Prelude.ByteString),
ByteString
"Version"
ByteString -> ByteString -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-12-01" :: Prelude.ByteString)
]
)
data GetAccountSendingEnabledResponse = GetAccountSendingEnabledResponse'
{
GetAccountSendingEnabledResponse -> Maybe Bool
enabled :: Prelude.Maybe Prelude.Bool,
GetAccountSendingEnabledResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool
(GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool)
-> (GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool)
-> Eq GetAccountSendingEnabledResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool
== :: GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool
$c/= :: GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool
/= :: GetAccountSendingEnabledResponse
-> GetAccountSendingEnabledResponse -> Bool
Prelude.Eq, ReadPrec [GetAccountSendingEnabledResponse]
ReadPrec GetAccountSendingEnabledResponse
Int -> ReadS GetAccountSendingEnabledResponse
ReadS [GetAccountSendingEnabledResponse]
(Int -> ReadS GetAccountSendingEnabledResponse)
-> ReadS [GetAccountSendingEnabledResponse]
-> ReadPrec GetAccountSendingEnabledResponse
-> ReadPrec [GetAccountSendingEnabledResponse]
-> Read GetAccountSendingEnabledResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS GetAccountSendingEnabledResponse
readsPrec :: Int -> ReadS GetAccountSendingEnabledResponse
$creadList :: ReadS [GetAccountSendingEnabledResponse]
readList :: ReadS [GetAccountSendingEnabledResponse]
$creadPrec :: ReadPrec GetAccountSendingEnabledResponse
readPrec :: ReadPrec GetAccountSendingEnabledResponse
$creadListPrec :: ReadPrec [GetAccountSendingEnabledResponse]
readListPrec :: ReadPrec [GetAccountSendingEnabledResponse]
Prelude.Read, Int -> GetAccountSendingEnabledResponse -> ShowS
[GetAccountSendingEnabledResponse] -> ShowS
GetAccountSendingEnabledResponse -> String
(Int -> GetAccountSendingEnabledResponse -> ShowS)
-> (GetAccountSendingEnabledResponse -> String)
-> ([GetAccountSendingEnabledResponse] -> ShowS)
-> Show GetAccountSendingEnabledResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GetAccountSendingEnabledResponse -> ShowS
showsPrec :: Int -> GetAccountSendingEnabledResponse -> ShowS
$cshow :: GetAccountSendingEnabledResponse -> String
show :: GetAccountSendingEnabledResponse -> String
$cshowList :: [GetAccountSendingEnabledResponse] -> ShowS
showList :: [GetAccountSendingEnabledResponse] -> ShowS
Prelude.Show, (forall x.
GetAccountSendingEnabledResponse
-> Rep GetAccountSendingEnabledResponse x)
-> (forall x.
Rep GetAccountSendingEnabledResponse x
-> GetAccountSendingEnabledResponse)
-> Generic GetAccountSendingEnabledResponse
forall x.
Rep GetAccountSendingEnabledResponse x
-> GetAccountSendingEnabledResponse
forall x.
GetAccountSendingEnabledResponse
-> Rep GetAccountSendingEnabledResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
GetAccountSendingEnabledResponse
-> Rep GetAccountSendingEnabledResponse x
from :: forall x.
GetAccountSendingEnabledResponse
-> Rep GetAccountSendingEnabledResponse x
$cto :: forall x.
Rep GetAccountSendingEnabledResponse x
-> GetAccountSendingEnabledResponse
to :: forall x.
Rep GetAccountSendingEnabledResponse x
-> GetAccountSendingEnabledResponse
Prelude.Generic)
newGetAccountSendingEnabledResponse ::
Prelude.Int ->
GetAccountSendingEnabledResponse
newGetAccountSendingEnabledResponse :: Int -> GetAccountSendingEnabledResponse
newGetAccountSendingEnabledResponse Int
pHttpStatus_ =
GetAccountSendingEnabledResponse'
{ $sel:enabled:GetAccountSendingEnabledResponse' :: Maybe Bool
enabled =
Maybe Bool
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetAccountSendingEnabledResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getAccountSendingEnabledResponse_enabled :: Lens.Lens' GetAccountSendingEnabledResponse (Prelude.Maybe Prelude.Bool)
getAccountSendingEnabledResponse_enabled :: Lens' GetAccountSendingEnabledResponse (Maybe Bool)
getAccountSendingEnabledResponse_enabled = (GetAccountSendingEnabledResponse -> Maybe Bool)
-> (GetAccountSendingEnabledResponse
-> Maybe Bool -> GetAccountSendingEnabledResponse)
-> Lens' GetAccountSendingEnabledResponse (Maybe Bool)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountSendingEnabledResponse' {Maybe Bool
$sel:enabled:GetAccountSendingEnabledResponse' :: GetAccountSendingEnabledResponse -> Maybe Bool
enabled :: Maybe Bool
enabled} -> Maybe Bool
enabled) (\s :: GetAccountSendingEnabledResponse
s@GetAccountSendingEnabledResponse' {} Maybe Bool
a -> GetAccountSendingEnabledResponse
s {enabled = a} :: GetAccountSendingEnabledResponse)
getAccountSendingEnabledResponse_httpStatus :: Lens.Lens' GetAccountSendingEnabledResponse Prelude.Int
getAccountSendingEnabledResponse_httpStatus :: Lens' GetAccountSendingEnabledResponse Int
getAccountSendingEnabledResponse_httpStatus = (GetAccountSendingEnabledResponse -> Int)
-> (GetAccountSendingEnabledResponse
-> Int -> GetAccountSendingEnabledResponse)
-> Lens' GetAccountSendingEnabledResponse Int
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountSendingEnabledResponse' {Int
$sel:httpStatus:GetAccountSendingEnabledResponse' :: GetAccountSendingEnabledResponse -> Int
httpStatus :: Int
httpStatus} -> Int
httpStatus) (\s :: GetAccountSendingEnabledResponse
s@GetAccountSendingEnabledResponse' {} Int
a -> GetAccountSendingEnabledResponse
s {httpStatus = a} :: GetAccountSendingEnabledResponse)
instance
Prelude.NFData
GetAccountSendingEnabledResponse
where
rnf :: GetAccountSendingEnabledResponse -> ()
rnf GetAccountSendingEnabledResponse' {Int
Maybe Bool
$sel:enabled:GetAccountSendingEnabledResponse' :: GetAccountSendingEnabledResponse -> Maybe Bool
$sel:httpStatus:GetAccountSendingEnabledResponse' :: GetAccountSendingEnabledResponse -> Int
enabled :: Maybe Bool
httpStatus :: Int
..} =
Maybe Bool -> ()
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
enabled
() -> () -> ()
forall a b. a -> b -> b
`Prelude.seq` Int -> ()
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus