{-# 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.PinpointEmail.GetAccount
(
GetAccount (..),
newGetAccount,
GetAccountResponse (..),
newGetAccountResponse,
getAccountResponse_dedicatedIpAutoWarmupEnabled,
getAccountResponse_enforcementStatus,
getAccountResponse_productionAccessEnabled,
getAccountResponse_sendQuota,
getAccountResponse_sendingEnabled,
getAccountResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.PinpointEmail.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetAccount = GetAccount'
{
}
deriving (GetAccount -> GetAccount -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetAccount -> GetAccount -> Bool
$c/= :: GetAccount -> GetAccount -> Bool
== :: GetAccount -> GetAccount -> Bool
$c== :: GetAccount -> GetAccount -> Bool
Prelude.Eq, ReadPrec [GetAccount]
ReadPrec GetAccount
Int -> ReadS GetAccount
ReadS [GetAccount]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetAccount]
$creadListPrec :: ReadPrec [GetAccount]
readPrec :: ReadPrec GetAccount
$creadPrec :: ReadPrec GetAccount
readList :: ReadS [GetAccount]
$creadList :: ReadS [GetAccount]
readsPrec :: Int -> ReadS GetAccount
$creadsPrec :: Int -> ReadS GetAccount
Prelude.Read, Int -> GetAccount -> ShowS
[GetAccount] -> ShowS
GetAccount -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetAccount] -> ShowS
$cshowList :: [GetAccount] -> ShowS
show :: GetAccount -> String
$cshow :: GetAccount -> String
showsPrec :: Int -> GetAccount -> ShowS
$cshowsPrec :: Int -> GetAccount -> ShowS
Prelude.Show, forall x. Rep GetAccount x -> GetAccount
forall x. GetAccount -> Rep GetAccount x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetAccount x -> GetAccount
$cfrom :: forall x. GetAccount -> Rep GetAccount x
Prelude.Generic)
newGetAccount ::
GetAccount
newGetAccount :: GetAccount
newGetAccount = GetAccount
GetAccount'
instance Core.AWSRequest GetAccount where
type AWSResponse GetAccount = GetAccountResponse
request :: (Service -> Service) -> GetAccount -> Request GetAccount
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetAccount
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetAccount)))
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 Bool
-> Maybe Text
-> Maybe Bool
-> Maybe SendQuota
-> Maybe Bool
-> Int
-> GetAccountResponse
GetAccountResponse'
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
"DedicatedIpAutoWarmupEnabled")
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
"EnforcementStatus")
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
"ProductionAccessEnabled")
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
"SendQuota")
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
"SendingEnabled")
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 GetAccount where
hashWithSalt :: Int -> GetAccount -> Int
hashWithSalt Int
_salt GetAccount
_ =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ()
instance Prelude.NFData GetAccount where
rnf :: GetAccount -> ()
rnf GetAccount
_ = ()
instance Data.ToHeaders GetAccount where
toHeaders :: GetAccount -> 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.ToPath GetAccount where
toPath :: GetAccount -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/v1/email/account"
instance Data.ToQuery GetAccount where
toQuery :: GetAccount -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetAccountResponse = GetAccountResponse'
{
GetAccountResponse -> Maybe Bool
dedicatedIpAutoWarmupEnabled :: Prelude.Maybe Prelude.Bool,
GetAccountResponse -> Maybe Text
enforcementStatus :: Prelude.Maybe Prelude.Text,
GetAccountResponse -> Maybe Bool
productionAccessEnabled :: Prelude.Maybe Prelude.Bool,
GetAccountResponse -> Maybe SendQuota
sendQuota :: Prelude.Maybe SendQuota,
GetAccountResponse -> Maybe Bool
sendingEnabled :: Prelude.Maybe Prelude.Bool,
GetAccountResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetAccountResponse -> GetAccountResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetAccountResponse -> GetAccountResponse -> Bool
$c/= :: GetAccountResponse -> GetAccountResponse -> Bool
== :: GetAccountResponse -> GetAccountResponse -> Bool
$c== :: GetAccountResponse -> GetAccountResponse -> Bool
Prelude.Eq, ReadPrec [GetAccountResponse]
ReadPrec GetAccountResponse
Int -> ReadS GetAccountResponse
ReadS [GetAccountResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetAccountResponse]
$creadListPrec :: ReadPrec [GetAccountResponse]
readPrec :: ReadPrec GetAccountResponse
$creadPrec :: ReadPrec GetAccountResponse
readList :: ReadS [GetAccountResponse]
$creadList :: ReadS [GetAccountResponse]
readsPrec :: Int -> ReadS GetAccountResponse
$creadsPrec :: Int -> ReadS GetAccountResponse
Prelude.Read, Int -> GetAccountResponse -> ShowS
[GetAccountResponse] -> ShowS
GetAccountResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetAccountResponse] -> ShowS
$cshowList :: [GetAccountResponse] -> ShowS
show :: GetAccountResponse -> String
$cshow :: GetAccountResponse -> String
showsPrec :: Int -> GetAccountResponse -> ShowS
$cshowsPrec :: Int -> GetAccountResponse -> ShowS
Prelude.Show, forall x. Rep GetAccountResponse x -> GetAccountResponse
forall x. GetAccountResponse -> Rep GetAccountResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetAccountResponse x -> GetAccountResponse
$cfrom :: forall x. GetAccountResponse -> Rep GetAccountResponse x
Prelude.Generic)
newGetAccountResponse ::
Prelude.Int ->
GetAccountResponse
newGetAccountResponse :: Int -> GetAccountResponse
newGetAccountResponse Int
pHttpStatus_ =
GetAccountResponse'
{ $sel:dedicatedIpAutoWarmupEnabled:GetAccountResponse' :: Maybe Bool
dedicatedIpAutoWarmupEnabled =
forall a. Maybe a
Prelude.Nothing,
$sel:enforcementStatus:GetAccountResponse' :: Maybe Text
enforcementStatus = forall a. Maybe a
Prelude.Nothing,
$sel:productionAccessEnabled:GetAccountResponse' :: Maybe Bool
productionAccessEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:sendQuota:GetAccountResponse' :: Maybe SendQuota
sendQuota = forall a. Maybe a
Prelude.Nothing,
$sel:sendingEnabled:GetAccountResponse' :: Maybe Bool
sendingEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetAccountResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getAccountResponse_dedicatedIpAutoWarmupEnabled :: Lens.Lens' GetAccountResponse (Prelude.Maybe Prelude.Bool)
getAccountResponse_dedicatedIpAutoWarmupEnabled :: Lens' GetAccountResponse (Maybe Bool)
getAccountResponse_dedicatedIpAutoWarmupEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Maybe Bool
dedicatedIpAutoWarmupEnabled :: Maybe Bool
$sel:dedicatedIpAutoWarmupEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
dedicatedIpAutoWarmupEnabled} -> Maybe Bool
dedicatedIpAutoWarmupEnabled) (\s :: GetAccountResponse
s@GetAccountResponse' {} Maybe Bool
a -> GetAccountResponse
s {$sel:dedicatedIpAutoWarmupEnabled:GetAccountResponse' :: Maybe Bool
dedicatedIpAutoWarmupEnabled = Maybe Bool
a} :: GetAccountResponse)
getAccountResponse_enforcementStatus :: Lens.Lens' GetAccountResponse (Prelude.Maybe Prelude.Text)
getAccountResponse_enforcementStatus :: Lens' GetAccountResponse (Maybe Text)
getAccountResponse_enforcementStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Maybe Text
enforcementStatus :: Maybe Text
$sel:enforcementStatus:GetAccountResponse' :: GetAccountResponse -> Maybe Text
enforcementStatus} -> Maybe Text
enforcementStatus) (\s :: GetAccountResponse
s@GetAccountResponse' {} Maybe Text
a -> GetAccountResponse
s {$sel:enforcementStatus:GetAccountResponse' :: Maybe Text
enforcementStatus = Maybe Text
a} :: GetAccountResponse)
getAccountResponse_productionAccessEnabled :: Lens.Lens' GetAccountResponse (Prelude.Maybe Prelude.Bool)
getAccountResponse_productionAccessEnabled :: Lens' GetAccountResponse (Maybe Bool)
getAccountResponse_productionAccessEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Maybe Bool
productionAccessEnabled :: Maybe Bool
$sel:productionAccessEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
productionAccessEnabled} -> Maybe Bool
productionAccessEnabled) (\s :: GetAccountResponse
s@GetAccountResponse' {} Maybe Bool
a -> GetAccountResponse
s {$sel:productionAccessEnabled:GetAccountResponse' :: Maybe Bool
productionAccessEnabled = Maybe Bool
a} :: GetAccountResponse)
getAccountResponse_sendQuota :: Lens.Lens' GetAccountResponse (Prelude.Maybe SendQuota)
getAccountResponse_sendQuota :: Lens' GetAccountResponse (Maybe SendQuota)
getAccountResponse_sendQuota = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Maybe SendQuota
sendQuota :: Maybe SendQuota
$sel:sendQuota:GetAccountResponse' :: GetAccountResponse -> Maybe SendQuota
sendQuota} -> Maybe SendQuota
sendQuota) (\s :: GetAccountResponse
s@GetAccountResponse' {} Maybe SendQuota
a -> GetAccountResponse
s {$sel:sendQuota:GetAccountResponse' :: Maybe SendQuota
sendQuota = Maybe SendQuota
a} :: GetAccountResponse)
getAccountResponse_sendingEnabled :: Lens.Lens' GetAccountResponse (Prelude.Maybe Prelude.Bool)
getAccountResponse_sendingEnabled :: Lens' GetAccountResponse (Maybe Bool)
getAccountResponse_sendingEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Maybe Bool
sendingEnabled :: Maybe Bool
$sel:sendingEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
sendingEnabled} -> Maybe Bool
sendingEnabled) (\s :: GetAccountResponse
s@GetAccountResponse' {} Maybe Bool
a -> GetAccountResponse
s {$sel:sendingEnabled:GetAccountResponse' :: Maybe Bool
sendingEnabled = Maybe Bool
a} :: GetAccountResponse)
getAccountResponse_httpStatus :: Lens.Lens' GetAccountResponse Prelude.Int
getAccountResponse_httpStatus :: Lens' GetAccountResponse Int
getAccountResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetAccountResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetAccountResponse' :: GetAccountResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetAccountResponse
s@GetAccountResponse' {} Int
a -> GetAccountResponse
s {$sel:httpStatus:GetAccountResponse' :: Int
httpStatus = Int
a} :: GetAccountResponse)
instance Prelude.NFData GetAccountResponse where
rnf :: GetAccountResponse -> ()
rnf GetAccountResponse' {Int
Maybe Bool
Maybe Text
Maybe SendQuota
httpStatus :: Int
sendingEnabled :: Maybe Bool
sendQuota :: Maybe SendQuota
productionAccessEnabled :: Maybe Bool
enforcementStatus :: Maybe Text
dedicatedIpAutoWarmupEnabled :: Maybe Bool
$sel:httpStatus:GetAccountResponse' :: GetAccountResponse -> Int
$sel:sendingEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
$sel:sendQuota:GetAccountResponse' :: GetAccountResponse -> Maybe SendQuota
$sel:productionAccessEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
$sel:enforcementStatus:GetAccountResponse' :: GetAccountResponse -> Maybe Text
$sel:dedicatedIpAutoWarmupEnabled:GetAccountResponse' :: GetAccountResponse -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dedicatedIpAutoWarmupEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
enforcementStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
productionAccessEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SendQuota
sendQuota
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
sendingEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus