{-# 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.CognitoSync.DescribeIdentityUsage
(
DescribeIdentityUsage (..),
newDescribeIdentityUsage,
describeIdentityUsage_identityPoolId,
describeIdentityUsage_identityId,
DescribeIdentityUsageResponse (..),
newDescribeIdentityUsageResponse,
describeIdentityUsageResponse_identityUsage,
describeIdentityUsageResponse_httpStatus,
)
where
import Amazonka.CognitoSync.Types
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
data DescribeIdentityUsage = DescribeIdentityUsage'
{
DescribeIdentityUsage -> Text
identityPoolId :: Prelude.Text,
DescribeIdentityUsage -> Text
identityId :: Prelude.Text
}
deriving (DescribeIdentityUsage -> DescribeIdentityUsage -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeIdentityUsage -> DescribeIdentityUsage -> Bool
$c/= :: DescribeIdentityUsage -> DescribeIdentityUsage -> Bool
== :: DescribeIdentityUsage -> DescribeIdentityUsage -> Bool
$c== :: DescribeIdentityUsage -> DescribeIdentityUsage -> Bool
Prelude.Eq, ReadPrec [DescribeIdentityUsage]
ReadPrec DescribeIdentityUsage
Int -> ReadS DescribeIdentityUsage
ReadS [DescribeIdentityUsage]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeIdentityUsage]
$creadListPrec :: ReadPrec [DescribeIdentityUsage]
readPrec :: ReadPrec DescribeIdentityUsage
$creadPrec :: ReadPrec DescribeIdentityUsage
readList :: ReadS [DescribeIdentityUsage]
$creadList :: ReadS [DescribeIdentityUsage]
readsPrec :: Int -> ReadS DescribeIdentityUsage
$creadsPrec :: Int -> ReadS DescribeIdentityUsage
Prelude.Read, Int -> DescribeIdentityUsage -> ShowS
[DescribeIdentityUsage] -> ShowS
DescribeIdentityUsage -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeIdentityUsage] -> ShowS
$cshowList :: [DescribeIdentityUsage] -> ShowS
show :: DescribeIdentityUsage -> String
$cshow :: DescribeIdentityUsage -> String
showsPrec :: Int -> DescribeIdentityUsage -> ShowS
$cshowsPrec :: Int -> DescribeIdentityUsage -> ShowS
Prelude.Show, forall x. Rep DescribeIdentityUsage x -> DescribeIdentityUsage
forall x. DescribeIdentityUsage -> Rep DescribeIdentityUsage x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeIdentityUsage x -> DescribeIdentityUsage
$cfrom :: forall x. DescribeIdentityUsage -> Rep DescribeIdentityUsage x
Prelude.Generic)
newDescribeIdentityUsage ::
Prelude.Text ->
Prelude.Text ->
DescribeIdentityUsage
newDescribeIdentityUsage :: Text -> Text -> DescribeIdentityUsage
newDescribeIdentityUsage
Text
pIdentityPoolId_
Text
pIdentityId_ =
DescribeIdentityUsage'
{ $sel:identityPoolId:DescribeIdentityUsage' :: Text
identityPoolId =
Text
pIdentityPoolId_,
$sel:identityId:DescribeIdentityUsage' :: Text
identityId = Text
pIdentityId_
}
describeIdentityUsage_identityPoolId :: Lens.Lens' DescribeIdentityUsage Prelude.Text
describeIdentityUsage_identityPoolId :: Lens' DescribeIdentityUsage Text
describeIdentityUsage_identityPoolId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeIdentityUsage' {Text
identityPoolId :: Text
$sel:identityPoolId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
identityPoolId} -> Text
identityPoolId) (\s :: DescribeIdentityUsage
s@DescribeIdentityUsage' {} Text
a -> DescribeIdentityUsage
s {$sel:identityPoolId:DescribeIdentityUsage' :: Text
identityPoolId = Text
a} :: DescribeIdentityUsage)
describeIdentityUsage_identityId :: Lens.Lens' DescribeIdentityUsage Prelude.Text
describeIdentityUsage_identityId :: Lens' DescribeIdentityUsage Text
describeIdentityUsage_identityId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeIdentityUsage' {Text
identityId :: Text
$sel:identityId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
identityId} -> Text
identityId) (\s :: DescribeIdentityUsage
s@DescribeIdentityUsage' {} Text
a -> DescribeIdentityUsage
s {$sel:identityId:DescribeIdentityUsage' :: Text
identityId = Text
a} :: DescribeIdentityUsage)
instance Core.AWSRequest DescribeIdentityUsage where
type
AWSResponse DescribeIdentityUsage =
DescribeIdentityUsageResponse
request :: (Service -> Service)
-> DescribeIdentityUsage -> Request DescribeIdentityUsage
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 DescribeIdentityUsage
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeIdentityUsage)))
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 IdentityUsage -> Int -> DescribeIdentityUsageResponse
DescribeIdentityUsageResponse'
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
"IdentityUsage")
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 DescribeIdentityUsage where
hashWithSalt :: Int -> DescribeIdentityUsage -> Int
hashWithSalt Int
_salt DescribeIdentityUsage' {Text
identityId :: Text
identityPoolId :: Text
$sel:identityId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
$sel:identityPoolId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
identityPoolId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
identityId
instance Prelude.NFData DescribeIdentityUsage where
rnf :: DescribeIdentityUsage -> ()
rnf DescribeIdentityUsage' {Text
identityId :: Text
identityPoolId :: Text
$sel:identityId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
$sel:identityPoolId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
identityPoolId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
identityId
instance Data.ToHeaders DescribeIdentityUsage where
toHeaders :: DescribeIdentityUsage -> 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 DescribeIdentityUsage where
toPath :: DescribeIdentityUsage -> ByteString
toPath DescribeIdentityUsage' {Text
identityId :: Text
identityPoolId :: Text
$sel:identityId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
$sel:identityPoolId:DescribeIdentityUsage' :: DescribeIdentityUsage -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/identitypools/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
identityPoolId,
ByteString
"/identities/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
identityId
]
instance Data.ToQuery DescribeIdentityUsage where
toQuery :: DescribeIdentityUsage -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeIdentityUsageResponse = DescribeIdentityUsageResponse'
{
DescribeIdentityUsageResponse -> Maybe IdentityUsage
identityUsage :: Prelude.Maybe IdentityUsage,
DescribeIdentityUsageResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeIdentityUsageResponse
-> DescribeIdentityUsageResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeIdentityUsageResponse
-> DescribeIdentityUsageResponse -> Bool
$c/= :: DescribeIdentityUsageResponse
-> DescribeIdentityUsageResponse -> Bool
== :: DescribeIdentityUsageResponse
-> DescribeIdentityUsageResponse -> Bool
$c== :: DescribeIdentityUsageResponse
-> DescribeIdentityUsageResponse -> Bool
Prelude.Eq, ReadPrec [DescribeIdentityUsageResponse]
ReadPrec DescribeIdentityUsageResponse
Int -> ReadS DescribeIdentityUsageResponse
ReadS [DescribeIdentityUsageResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeIdentityUsageResponse]
$creadListPrec :: ReadPrec [DescribeIdentityUsageResponse]
readPrec :: ReadPrec DescribeIdentityUsageResponse
$creadPrec :: ReadPrec DescribeIdentityUsageResponse
readList :: ReadS [DescribeIdentityUsageResponse]
$creadList :: ReadS [DescribeIdentityUsageResponse]
readsPrec :: Int -> ReadS DescribeIdentityUsageResponse
$creadsPrec :: Int -> ReadS DescribeIdentityUsageResponse
Prelude.Read, Int -> DescribeIdentityUsageResponse -> ShowS
[DescribeIdentityUsageResponse] -> ShowS
DescribeIdentityUsageResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeIdentityUsageResponse] -> ShowS
$cshowList :: [DescribeIdentityUsageResponse] -> ShowS
show :: DescribeIdentityUsageResponse -> String
$cshow :: DescribeIdentityUsageResponse -> String
showsPrec :: Int -> DescribeIdentityUsageResponse -> ShowS
$cshowsPrec :: Int -> DescribeIdentityUsageResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeIdentityUsageResponse x
-> DescribeIdentityUsageResponse
forall x.
DescribeIdentityUsageResponse
-> Rep DescribeIdentityUsageResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeIdentityUsageResponse x
-> DescribeIdentityUsageResponse
$cfrom :: forall x.
DescribeIdentityUsageResponse
-> Rep DescribeIdentityUsageResponse x
Prelude.Generic)
newDescribeIdentityUsageResponse ::
Prelude.Int ->
DescribeIdentityUsageResponse
newDescribeIdentityUsageResponse :: Int -> DescribeIdentityUsageResponse
newDescribeIdentityUsageResponse Int
pHttpStatus_ =
DescribeIdentityUsageResponse'
{ $sel:identityUsage:DescribeIdentityUsageResponse' :: Maybe IdentityUsage
identityUsage =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeIdentityUsageResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeIdentityUsageResponse_identityUsage :: Lens.Lens' DescribeIdentityUsageResponse (Prelude.Maybe IdentityUsage)
describeIdentityUsageResponse_identityUsage :: Lens' DescribeIdentityUsageResponse (Maybe IdentityUsage)
describeIdentityUsageResponse_identityUsage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeIdentityUsageResponse' {Maybe IdentityUsage
identityUsage :: Maybe IdentityUsage
$sel:identityUsage:DescribeIdentityUsageResponse' :: DescribeIdentityUsageResponse -> Maybe IdentityUsage
identityUsage} -> Maybe IdentityUsage
identityUsage) (\s :: DescribeIdentityUsageResponse
s@DescribeIdentityUsageResponse' {} Maybe IdentityUsage
a -> DescribeIdentityUsageResponse
s {$sel:identityUsage:DescribeIdentityUsageResponse' :: Maybe IdentityUsage
identityUsage = Maybe IdentityUsage
a} :: DescribeIdentityUsageResponse)
describeIdentityUsageResponse_httpStatus :: Lens.Lens' DescribeIdentityUsageResponse Prelude.Int
describeIdentityUsageResponse_httpStatus :: Lens' DescribeIdentityUsageResponse Int
describeIdentityUsageResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeIdentityUsageResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeIdentityUsageResponse' :: DescribeIdentityUsageResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeIdentityUsageResponse
s@DescribeIdentityUsageResponse' {} Int
a -> DescribeIdentityUsageResponse
s {$sel:httpStatus:DescribeIdentityUsageResponse' :: Int
httpStatus = Int
a} :: DescribeIdentityUsageResponse)
instance Prelude.NFData DescribeIdentityUsageResponse where
rnf :: DescribeIdentityUsageResponse -> ()
rnf DescribeIdentityUsageResponse' {Int
Maybe IdentityUsage
httpStatus :: Int
identityUsage :: Maybe IdentityUsage
$sel:httpStatus:DescribeIdentityUsageResponse' :: DescribeIdentityUsageResponse -> Int
$sel:identityUsage:DescribeIdentityUsageResponse' :: DescribeIdentityUsageResponse -> Maybe IdentityUsage
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe IdentityUsage
identityUsage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus