{-# 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.CognitoIdentityProvider.GetIdentityProviderByIdentifier
(
GetIdentityProviderByIdentifier (..),
newGetIdentityProviderByIdentifier,
getIdentityProviderByIdentifier_userPoolId,
getIdentityProviderByIdentifier_idpIdentifier,
GetIdentityProviderByIdentifierResponse (..),
newGetIdentityProviderByIdentifierResponse,
getIdentityProviderByIdentifierResponse_httpStatus,
getIdentityProviderByIdentifierResponse_identityProvider,
)
where
import Amazonka.CognitoIdentityProvider.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 GetIdentityProviderByIdentifier = GetIdentityProviderByIdentifier'
{
GetIdentityProviderByIdentifier -> Text
userPoolId :: Prelude.Text,
GetIdentityProviderByIdentifier -> Text
idpIdentifier :: Prelude.Text
}
deriving (GetIdentityProviderByIdentifier
-> GetIdentityProviderByIdentifier -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetIdentityProviderByIdentifier
-> GetIdentityProviderByIdentifier -> Bool
$c/= :: GetIdentityProviderByIdentifier
-> GetIdentityProviderByIdentifier -> Bool
== :: GetIdentityProviderByIdentifier
-> GetIdentityProviderByIdentifier -> Bool
$c== :: GetIdentityProviderByIdentifier
-> GetIdentityProviderByIdentifier -> Bool
Prelude.Eq, ReadPrec [GetIdentityProviderByIdentifier]
ReadPrec GetIdentityProviderByIdentifier
Int -> ReadS GetIdentityProviderByIdentifier
ReadS [GetIdentityProviderByIdentifier]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetIdentityProviderByIdentifier]
$creadListPrec :: ReadPrec [GetIdentityProviderByIdentifier]
readPrec :: ReadPrec GetIdentityProviderByIdentifier
$creadPrec :: ReadPrec GetIdentityProviderByIdentifier
readList :: ReadS [GetIdentityProviderByIdentifier]
$creadList :: ReadS [GetIdentityProviderByIdentifier]
readsPrec :: Int -> ReadS GetIdentityProviderByIdentifier
$creadsPrec :: Int -> ReadS GetIdentityProviderByIdentifier
Prelude.Read, Int -> GetIdentityProviderByIdentifier -> ShowS
[GetIdentityProviderByIdentifier] -> ShowS
GetIdentityProviderByIdentifier -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetIdentityProviderByIdentifier] -> ShowS
$cshowList :: [GetIdentityProviderByIdentifier] -> ShowS
show :: GetIdentityProviderByIdentifier -> String
$cshow :: GetIdentityProviderByIdentifier -> String
showsPrec :: Int -> GetIdentityProviderByIdentifier -> ShowS
$cshowsPrec :: Int -> GetIdentityProviderByIdentifier -> ShowS
Prelude.Show, forall x.
Rep GetIdentityProviderByIdentifier x
-> GetIdentityProviderByIdentifier
forall x.
GetIdentityProviderByIdentifier
-> Rep GetIdentityProviderByIdentifier x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetIdentityProviderByIdentifier x
-> GetIdentityProviderByIdentifier
$cfrom :: forall x.
GetIdentityProviderByIdentifier
-> Rep GetIdentityProviderByIdentifier x
Prelude.Generic)
newGetIdentityProviderByIdentifier ::
Prelude.Text ->
Prelude.Text ->
GetIdentityProviderByIdentifier
newGetIdentityProviderByIdentifier :: Text -> Text -> GetIdentityProviderByIdentifier
newGetIdentityProviderByIdentifier
Text
pUserPoolId_
Text
pIdpIdentifier_ =
GetIdentityProviderByIdentifier'
{ $sel:userPoolId:GetIdentityProviderByIdentifier' :: Text
userPoolId =
Text
pUserPoolId_,
$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: Text
idpIdentifier = Text
pIdpIdentifier_
}
getIdentityProviderByIdentifier_userPoolId :: Lens.Lens' GetIdentityProviderByIdentifier Prelude.Text
getIdentityProviderByIdentifier_userPoolId :: Lens' GetIdentityProviderByIdentifier Text
getIdentityProviderByIdentifier_userPoolId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderByIdentifier' {Text
userPoolId :: Text
$sel:userPoolId:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
userPoolId} -> Text
userPoolId) (\s :: GetIdentityProviderByIdentifier
s@GetIdentityProviderByIdentifier' {} Text
a -> GetIdentityProviderByIdentifier
s {$sel:userPoolId:GetIdentityProviderByIdentifier' :: Text
userPoolId = Text
a} :: GetIdentityProviderByIdentifier)
getIdentityProviderByIdentifier_idpIdentifier :: Lens.Lens' GetIdentityProviderByIdentifier Prelude.Text
getIdentityProviderByIdentifier_idpIdentifier :: Lens' GetIdentityProviderByIdentifier Text
getIdentityProviderByIdentifier_idpIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderByIdentifier' {Text
idpIdentifier :: Text
$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
idpIdentifier} -> Text
idpIdentifier) (\s :: GetIdentityProviderByIdentifier
s@GetIdentityProviderByIdentifier' {} Text
a -> GetIdentityProviderByIdentifier
s {$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: Text
idpIdentifier = Text
a} :: GetIdentityProviderByIdentifier)
instance
Core.AWSRequest
GetIdentityProviderByIdentifier
where
type
AWSResponse GetIdentityProviderByIdentifier =
GetIdentityProviderByIdentifierResponse
request :: (Service -> Service)
-> GetIdentityProviderByIdentifier
-> Request GetIdentityProviderByIdentifier
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 GetIdentityProviderByIdentifier
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse GetIdentityProviderByIdentifier)))
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 ->
Int
-> IdentityProviderType -> GetIdentityProviderByIdentifierResponse
GetIdentityProviderByIdentifierResponse'
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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"IdentityProvider")
)
instance
Prelude.Hashable
GetIdentityProviderByIdentifier
where
hashWithSalt :: Int -> GetIdentityProviderByIdentifier -> Int
hashWithSalt
Int
_salt
GetIdentityProviderByIdentifier' {Text
idpIdentifier :: Text
userPoolId :: Text
$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
$sel:userPoolId:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
userPoolId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
idpIdentifier
instance
Prelude.NFData
GetIdentityProviderByIdentifier
where
rnf :: GetIdentityProviderByIdentifier -> ()
rnf GetIdentityProviderByIdentifier' {Text
idpIdentifier :: Text
userPoolId :: Text
$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
$sel:userPoolId:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
userPoolId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
idpIdentifier
instance
Data.ToHeaders
GetIdentityProviderByIdentifier
where
toHeaders :: GetIdentityProviderByIdentifier -> 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
"AWSCognitoIdentityProviderService.GetIdentityProviderByIdentifier" ::
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 GetIdentityProviderByIdentifier where
toJSON :: GetIdentityProviderByIdentifier -> Value
toJSON GetIdentityProviderByIdentifier' {Text
idpIdentifier :: Text
userPoolId :: Text
$sel:idpIdentifier:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
$sel:userPoolId:GetIdentityProviderByIdentifier' :: GetIdentityProviderByIdentifier -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"UserPoolId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
userPoolId),
forall a. a -> Maybe a
Prelude.Just
(Key
"IdpIdentifier" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
idpIdentifier)
]
)
instance Data.ToPath GetIdentityProviderByIdentifier where
toPath :: GetIdentityProviderByIdentifier -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GetIdentityProviderByIdentifier where
toQuery :: GetIdentityProviderByIdentifier -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetIdentityProviderByIdentifierResponse = GetIdentityProviderByIdentifierResponse'
{
GetIdentityProviderByIdentifierResponse -> Int
httpStatus :: Prelude.Int,
GetIdentityProviderByIdentifierResponse -> IdentityProviderType
identityProvider :: IdentityProviderType
}
deriving (GetIdentityProviderByIdentifierResponse
-> GetIdentityProviderByIdentifierResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetIdentityProviderByIdentifierResponse
-> GetIdentityProviderByIdentifierResponse -> Bool
$c/= :: GetIdentityProviderByIdentifierResponse
-> GetIdentityProviderByIdentifierResponse -> Bool
== :: GetIdentityProviderByIdentifierResponse
-> GetIdentityProviderByIdentifierResponse -> Bool
$c== :: GetIdentityProviderByIdentifierResponse
-> GetIdentityProviderByIdentifierResponse -> Bool
Prelude.Eq, ReadPrec [GetIdentityProviderByIdentifierResponse]
ReadPrec GetIdentityProviderByIdentifierResponse
Int -> ReadS GetIdentityProviderByIdentifierResponse
ReadS [GetIdentityProviderByIdentifierResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetIdentityProviderByIdentifierResponse]
$creadListPrec :: ReadPrec [GetIdentityProviderByIdentifierResponse]
readPrec :: ReadPrec GetIdentityProviderByIdentifierResponse
$creadPrec :: ReadPrec GetIdentityProviderByIdentifierResponse
readList :: ReadS [GetIdentityProviderByIdentifierResponse]
$creadList :: ReadS [GetIdentityProviderByIdentifierResponse]
readsPrec :: Int -> ReadS GetIdentityProviderByIdentifierResponse
$creadsPrec :: Int -> ReadS GetIdentityProviderByIdentifierResponse
Prelude.Read, Int -> GetIdentityProviderByIdentifierResponse -> ShowS
[GetIdentityProviderByIdentifierResponse] -> ShowS
GetIdentityProviderByIdentifierResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetIdentityProviderByIdentifierResponse] -> ShowS
$cshowList :: [GetIdentityProviderByIdentifierResponse] -> ShowS
show :: GetIdentityProviderByIdentifierResponse -> String
$cshow :: GetIdentityProviderByIdentifierResponse -> String
showsPrec :: Int -> GetIdentityProviderByIdentifierResponse -> ShowS
$cshowsPrec :: Int -> GetIdentityProviderByIdentifierResponse -> ShowS
Prelude.Show, forall x.
Rep GetIdentityProviderByIdentifierResponse x
-> GetIdentityProviderByIdentifierResponse
forall x.
GetIdentityProviderByIdentifierResponse
-> Rep GetIdentityProviderByIdentifierResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetIdentityProviderByIdentifierResponse x
-> GetIdentityProviderByIdentifierResponse
$cfrom :: forall x.
GetIdentityProviderByIdentifierResponse
-> Rep GetIdentityProviderByIdentifierResponse x
Prelude.Generic)
newGetIdentityProviderByIdentifierResponse ::
Prelude.Int ->
IdentityProviderType ->
GetIdentityProviderByIdentifierResponse
newGetIdentityProviderByIdentifierResponse :: Int
-> IdentityProviderType -> GetIdentityProviderByIdentifierResponse
newGetIdentityProviderByIdentifierResponse
Int
pHttpStatus_
IdentityProviderType
pIdentityProvider_ =
GetIdentityProviderByIdentifierResponse'
{ $sel:httpStatus:GetIdentityProviderByIdentifierResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:identityProvider:GetIdentityProviderByIdentifierResponse' :: IdentityProviderType
identityProvider =
IdentityProviderType
pIdentityProvider_
}
getIdentityProviderByIdentifierResponse_httpStatus :: Lens.Lens' GetIdentityProviderByIdentifierResponse Prelude.Int
getIdentityProviderByIdentifierResponse_httpStatus :: Lens' GetIdentityProviderByIdentifierResponse Int
getIdentityProviderByIdentifierResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderByIdentifierResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetIdentityProviderByIdentifierResponse' :: GetIdentityProviderByIdentifierResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetIdentityProviderByIdentifierResponse
s@GetIdentityProviderByIdentifierResponse' {} Int
a -> GetIdentityProviderByIdentifierResponse
s {$sel:httpStatus:GetIdentityProviderByIdentifierResponse' :: Int
httpStatus = Int
a} :: GetIdentityProviderByIdentifierResponse)
getIdentityProviderByIdentifierResponse_identityProvider :: Lens.Lens' GetIdentityProviderByIdentifierResponse IdentityProviderType
getIdentityProviderByIdentifierResponse_identityProvider :: Lens' GetIdentityProviderByIdentifierResponse IdentityProviderType
getIdentityProviderByIdentifierResponse_identityProvider = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderByIdentifierResponse' {IdentityProviderType
identityProvider :: IdentityProviderType
$sel:identityProvider:GetIdentityProviderByIdentifierResponse' :: GetIdentityProviderByIdentifierResponse -> IdentityProviderType
identityProvider} -> IdentityProviderType
identityProvider) (\s :: GetIdentityProviderByIdentifierResponse
s@GetIdentityProviderByIdentifierResponse' {} IdentityProviderType
a -> GetIdentityProviderByIdentifierResponse
s {$sel:identityProvider:GetIdentityProviderByIdentifierResponse' :: IdentityProviderType
identityProvider = IdentityProviderType
a} :: GetIdentityProviderByIdentifierResponse)
instance
Prelude.NFData
GetIdentityProviderByIdentifierResponse
where
rnf :: GetIdentityProviderByIdentifierResponse -> ()
rnf GetIdentityProviderByIdentifierResponse' {Int
IdentityProviderType
identityProvider :: IdentityProviderType
httpStatus :: Int
$sel:identityProvider:GetIdentityProviderByIdentifierResponse' :: GetIdentityProviderByIdentifierResponse -> IdentityProviderType
$sel:httpStatus:GetIdentityProviderByIdentifierResponse' :: GetIdentityProviderByIdentifierResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf IdentityProviderType
identityProvider