{-# 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.WorkSpacesWeb.GetIdentityProvider
(
GetIdentityProvider (..),
newGetIdentityProvider,
getIdentityProvider_identityProviderArn,
GetIdentityProviderResponse (..),
newGetIdentityProviderResponse,
getIdentityProviderResponse_identityProvider,
getIdentityProviderResponse_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.WorkSpacesWeb.Types
data GetIdentityProvider = GetIdentityProvider'
{
GetIdentityProvider -> Text
identityProviderArn :: Prelude.Text
}
deriving (GetIdentityProvider -> GetIdentityProvider -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetIdentityProvider -> GetIdentityProvider -> Bool
$c/= :: GetIdentityProvider -> GetIdentityProvider -> Bool
== :: GetIdentityProvider -> GetIdentityProvider -> Bool
$c== :: GetIdentityProvider -> GetIdentityProvider -> Bool
Prelude.Eq, ReadPrec [GetIdentityProvider]
ReadPrec GetIdentityProvider
Int -> ReadS GetIdentityProvider
ReadS [GetIdentityProvider]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetIdentityProvider]
$creadListPrec :: ReadPrec [GetIdentityProvider]
readPrec :: ReadPrec GetIdentityProvider
$creadPrec :: ReadPrec GetIdentityProvider
readList :: ReadS [GetIdentityProvider]
$creadList :: ReadS [GetIdentityProvider]
readsPrec :: Int -> ReadS GetIdentityProvider
$creadsPrec :: Int -> ReadS GetIdentityProvider
Prelude.Read, Int -> GetIdentityProvider -> ShowS
[GetIdentityProvider] -> ShowS
GetIdentityProvider -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetIdentityProvider] -> ShowS
$cshowList :: [GetIdentityProvider] -> ShowS
show :: GetIdentityProvider -> String
$cshow :: GetIdentityProvider -> String
showsPrec :: Int -> GetIdentityProvider -> ShowS
$cshowsPrec :: Int -> GetIdentityProvider -> ShowS
Prelude.Show, forall x. Rep GetIdentityProvider x -> GetIdentityProvider
forall x. GetIdentityProvider -> Rep GetIdentityProvider x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetIdentityProvider x -> GetIdentityProvider
$cfrom :: forall x. GetIdentityProvider -> Rep GetIdentityProvider x
Prelude.Generic)
newGetIdentityProvider ::
Prelude.Text ->
GetIdentityProvider
newGetIdentityProvider :: Text -> GetIdentityProvider
newGetIdentityProvider Text
pIdentityProviderArn_ =
GetIdentityProvider'
{ $sel:identityProviderArn:GetIdentityProvider' :: Text
identityProviderArn =
Text
pIdentityProviderArn_
}
getIdentityProvider_identityProviderArn :: Lens.Lens' GetIdentityProvider Prelude.Text
getIdentityProvider_identityProviderArn :: Lens' GetIdentityProvider Text
getIdentityProvider_identityProviderArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProvider' {Text
identityProviderArn :: Text
$sel:identityProviderArn:GetIdentityProvider' :: GetIdentityProvider -> Text
identityProviderArn} -> Text
identityProviderArn) (\s :: GetIdentityProvider
s@GetIdentityProvider' {} Text
a -> GetIdentityProvider
s {$sel:identityProviderArn:GetIdentityProvider' :: Text
identityProviderArn = Text
a} :: GetIdentityProvider)
instance Core.AWSRequest GetIdentityProvider where
type
AWSResponse GetIdentityProvider =
GetIdentityProviderResponse
request :: (Service -> Service)
-> GetIdentityProvider -> Request GetIdentityProvider
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 GetIdentityProvider
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetIdentityProvider)))
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 IdentityProvider -> Int -> GetIdentityProviderResponse
GetIdentityProviderResponse'
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
"identityProvider")
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 GetIdentityProvider where
hashWithSalt :: Int -> GetIdentityProvider -> Int
hashWithSalt Int
_salt GetIdentityProvider' {Text
identityProviderArn :: Text
$sel:identityProviderArn:GetIdentityProvider' :: GetIdentityProvider -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
identityProviderArn
instance Prelude.NFData GetIdentityProvider where
rnf :: GetIdentityProvider -> ()
rnf GetIdentityProvider' {Text
identityProviderArn :: Text
$sel:identityProviderArn:GetIdentityProvider' :: GetIdentityProvider -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
identityProviderArn
instance Data.ToHeaders GetIdentityProvider where
toHeaders :: GetIdentityProvider -> 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 GetIdentityProvider where
toPath :: GetIdentityProvider -> ByteString
toPath GetIdentityProvider' {Text
identityProviderArn :: Text
$sel:identityProviderArn:GetIdentityProvider' :: GetIdentityProvider -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/identityProviders/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
identityProviderArn
]
instance Data.ToQuery GetIdentityProvider where
toQuery :: GetIdentityProvider -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetIdentityProviderResponse = GetIdentityProviderResponse'
{
GetIdentityProviderResponse -> Maybe IdentityProvider
identityProvider :: Prelude.Maybe IdentityProvider,
GetIdentityProviderResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetIdentityProviderResponse -> GetIdentityProviderResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetIdentityProviderResponse -> GetIdentityProviderResponse -> Bool
$c/= :: GetIdentityProviderResponse -> GetIdentityProviderResponse -> Bool
== :: GetIdentityProviderResponse -> GetIdentityProviderResponse -> Bool
$c== :: GetIdentityProviderResponse -> GetIdentityProviderResponse -> Bool
Prelude.Eq, Int -> GetIdentityProviderResponse -> ShowS
[GetIdentityProviderResponse] -> ShowS
GetIdentityProviderResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetIdentityProviderResponse] -> ShowS
$cshowList :: [GetIdentityProviderResponse] -> ShowS
show :: GetIdentityProviderResponse -> String
$cshow :: GetIdentityProviderResponse -> String
showsPrec :: Int -> GetIdentityProviderResponse -> ShowS
$cshowsPrec :: Int -> GetIdentityProviderResponse -> ShowS
Prelude.Show, forall x.
Rep GetIdentityProviderResponse x -> GetIdentityProviderResponse
forall x.
GetIdentityProviderResponse -> Rep GetIdentityProviderResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetIdentityProviderResponse x -> GetIdentityProviderResponse
$cfrom :: forall x.
GetIdentityProviderResponse -> Rep GetIdentityProviderResponse x
Prelude.Generic)
newGetIdentityProviderResponse ::
Prelude.Int ->
GetIdentityProviderResponse
newGetIdentityProviderResponse :: Int -> GetIdentityProviderResponse
newGetIdentityProviderResponse Int
pHttpStatus_ =
GetIdentityProviderResponse'
{ $sel:identityProvider:GetIdentityProviderResponse' :: Maybe IdentityProvider
identityProvider =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetIdentityProviderResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getIdentityProviderResponse_identityProvider :: Lens.Lens' GetIdentityProviderResponse (Prelude.Maybe IdentityProvider)
getIdentityProviderResponse_identityProvider :: Lens' GetIdentityProviderResponse (Maybe IdentityProvider)
getIdentityProviderResponse_identityProvider = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderResponse' {Maybe IdentityProvider
identityProvider :: Maybe IdentityProvider
$sel:identityProvider:GetIdentityProviderResponse' :: GetIdentityProviderResponse -> Maybe IdentityProvider
identityProvider} -> Maybe IdentityProvider
identityProvider) (\s :: GetIdentityProviderResponse
s@GetIdentityProviderResponse' {} Maybe IdentityProvider
a -> GetIdentityProviderResponse
s {$sel:identityProvider:GetIdentityProviderResponse' :: Maybe IdentityProvider
identityProvider = Maybe IdentityProvider
a} :: GetIdentityProviderResponse)
getIdentityProviderResponse_httpStatus :: Lens.Lens' GetIdentityProviderResponse Prelude.Int
getIdentityProviderResponse_httpStatus :: Lens' GetIdentityProviderResponse Int
getIdentityProviderResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetIdentityProviderResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetIdentityProviderResponse' :: GetIdentityProviderResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetIdentityProviderResponse
s@GetIdentityProviderResponse' {} Int
a -> GetIdentityProviderResponse
s {$sel:httpStatus:GetIdentityProviderResponse' :: Int
httpStatus = Int
a} :: GetIdentityProviderResponse)
instance Prelude.NFData GetIdentityProviderResponse where
rnf :: GetIdentityProviderResponse -> ()
rnf GetIdentityProviderResponse' {Int
Maybe IdentityProvider
httpStatus :: Int
identityProvider :: Maybe IdentityProvider
$sel:httpStatus:GetIdentityProviderResponse' :: GetIdentityProviderResponse -> Int
$sel:identityProvider:GetIdentityProviderResponse' :: GetIdentityProviderResponse -> Maybe IdentityProvider
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe IdentityProvider
identityProvider
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus