{-# 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.IAM.ListSAMLProviders
(
ListSAMLProviders (..),
newListSAMLProviders,
ListSAMLProvidersResponse (..),
newListSAMLProvidersResponse,
listSAMLProvidersResponse_sAMLProviderList,
listSAMLProvidersResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IAM.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ListSAMLProviders = ListSAMLProviders'
{
}
deriving (ListSAMLProviders -> ListSAMLProviders -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSAMLProviders -> ListSAMLProviders -> Bool
$c/= :: ListSAMLProviders -> ListSAMLProviders -> Bool
== :: ListSAMLProviders -> ListSAMLProviders -> Bool
$c== :: ListSAMLProviders -> ListSAMLProviders -> Bool
Prelude.Eq, ReadPrec [ListSAMLProviders]
ReadPrec ListSAMLProviders
Int -> ReadS ListSAMLProviders
ReadS [ListSAMLProviders]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListSAMLProviders]
$creadListPrec :: ReadPrec [ListSAMLProviders]
readPrec :: ReadPrec ListSAMLProviders
$creadPrec :: ReadPrec ListSAMLProviders
readList :: ReadS [ListSAMLProviders]
$creadList :: ReadS [ListSAMLProviders]
readsPrec :: Int -> ReadS ListSAMLProviders
$creadsPrec :: Int -> ReadS ListSAMLProviders
Prelude.Read, Int -> ListSAMLProviders -> ShowS
[ListSAMLProviders] -> ShowS
ListSAMLProviders -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSAMLProviders] -> ShowS
$cshowList :: [ListSAMLProviders] -> ShowS
show :: ListSAMLProviders -> String
$cshow :: ListSAMLProviders -> String
showsPrec :: Int -> ListSAMLProviders -> ShowS
$cshowsPrec :: Int -> ListSAMLProviders -> ShowS
Prelude.Show, forall x. Rep ListSAMLProviders x -> ListSAMLProviders
forall x. ListSAMLProviders -> Rep ListSAMLProviders x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListSAMLProviders x -> ListSAMLProviders
$cfrom :: forall x. ListSAMLProviders -> Rep ListSAMLProviders x
Prelude.Generic)
newListSAMLProviders ::
ListSAMLProviders
newListSAMLProviders :: ListSAMLProviders
newListSAMLProviders = ListSAMLProviders
ListSAMLProviders'
instance Core.AWSRequest ListSAMLProviders where
type
AWSResponse ListSAMLProviders =
ListSAMLProvidersResponse
request :: (Service -> Service)
-> ListSAMLProviders -> Request ListSAMLProviders
request Service -> Service
overrides =
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 ListSAMLProviders
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse ListSAMLProviders)))
response =
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
"ListSAMLProvidersResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe [SAMLProviderListEntry] -> Int -> ListSAMLProvidersResponse
ListSAMLProvidersResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"SAMLProviderList"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
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 ListSAMLProviders where
hashWithSalt :: Int -> ListSAMLProviders -> Int
hashWithSalt Int
_salt ListSAMLProviders
_ =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ()
instance Prelude.NFData ListSAMLProviders where
rnf :: ListSAMLProviders -> ()
rnf ListSAMLProviders
_ = ()
instance Data.ToHeaders ListSAMLProviders where
toHeaders :: ListSAMLProviders -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath ListSAMLProviders where
toPath :: ListSAMLProviders -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery ListSAMLProviders where
toQuery :: ListSAMLProviders -> QueryString
toQuery =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"ListSAMLProviders" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-05-08" :: Prelude.ByteString)
]
)
data ListSAMLProvidersResponse = ListSAMLProvidersResponse'
{
ListSAMLProvidersResponse -> Maybe [SAMLProviderListEntry]
sAMLProviderList :: Prelude.Maybe [SAMLProviderListEntry],
ListSAMLProvidersResponse -> Int
httpStatus :: Prelude.Int
}
deriving (ListSAMLProvidersResponse -> ListSAMLProvidersResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSAMLProvidersResponse -> ListSAMLProvidersResponse -> Bool
$c/= :: ListSAMLProvidersResponse -> ListSAMLProvidersResponse -> Bool
== :: ListSAMLProvidersResponse -> ListSAMLProvidersResponse -> Bool
$c== :: ListSAMLProvidersResponse -> ListSAMLProvidersResponse -> Bool
Prelude.Eq, ReadPrec [ListSAMLProvidersResponse]
ReadPrec ListSAMLProvidersResponse
Int -> ReadS ListSAMLProvidersResponse
ReadS [ListSAMLProvidersResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListSAMLProvidersResponse]
$creadListPrec :: ReadPrec [ListSAMLProvidersResponse]
readPrec :: ReadPrec ListSAMLProvidersResponse
$creadPrec :: ReadPrec ListSAMLProvidersResponse
readList :: ReadS [ListSAMLProvidersResponse]
$creadList :: ReadS [ListSAMLProvidersResponse]
readsPrec :: Int -> ReadS ListSAMLProvidersResponse
$creadsPrec :: Int -> ReadS ListSAMLProvidersResponse
Prelude.Read, Int -> ListSAMLProvidersResponse -> ShowS
[ListSAMLProvidersResponse] -> ShowS
ListSAMLProvidersResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSAMLProvidersResponse] -> ShowS
$cshowList :: [ListSAMLProvidersResponse] -> ShowS
show :: ListSAMLProvidersResponse -> String
$cshow :: ListSAMLProvidersResponse -> String
showsPrec :: Int -> ListSAMLProvidersResponse -> ShowS
$cshowsPrec :: Int -> ListSAMLProvidersResponse -> ShowS
Prelude.Show, forall x.
Rep ListSAMLProvidersResponse x -> ListSAMLProvidersResponse
forall x.
ListSAMLProvidersResponse -> Rep ListSAMLProvidersResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListSAMLProvidersResponse x -> ListSAMLProvidersResponse
$cfrom :: forall x.
ListSAMLProvidersResponse -> Rep ListSAMLProvidersResponse x
Prelude.Generic)
newListSAMLProvidersResponse ::
Prelude.Int ->
ListSAMLProvidersResponse
newListSAMLProvidersResponse :: Int -> ListSAMLProvidersResponse
newListSAMLProvidersResponse Int
pHttpStatus_ =
ListSAMLProvidersResponse'
{ $sel:sAMLProviderList:ListSAMLProvidersResponse' :: Maybe [SAMLProviderListEntry]
sAMLProviderList =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListSAMLProvidersResponse' :: Int
httpStatus = Int
pHttpStatus_
}
listSAMLProvidersResponse_sAMLProviderList :: Lens.Lens' ListSAMLProvidersResponse (Prelude.Maybe [SAMLProviderListEntry])
listSAMLProvidersResponse_sAMLProviderList :: Lens' ListSAMLProvidersResponse (Maybe [SAMLProviderListEntry])
listSAMLProvidersResponse_sAMLProviderList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSAMLProvidersResponse' {Maybe [SAMLProviderListEntry]
sAMLProviderList :: Maybe [SAMLProviderListEntry]
$sel:sAMLProviderList:ListSAMLProvidersResponse' :: ListSAMLProvidersResponse -> Maybe [SAMLProviderListEntry]
sAMLProviderList} -> Maybe [SAMLProviderListEntry]
sAMLProviderList) (\s :: ListSAMLProvidersResponse
s@ListSAMLProvidersResponse' {} Maybe [SAMLProviderListEntry]
a -> ListSAMLProvidersResponse
s {$sel:sAMLProviderList:ListSAMLProvidersResponse' :: Maybe [SAMLProviderListEntry]
sAMLProviderList = Maybe [SAMLProviderListEntry]
a} :: ListSAMLProvidersResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
listSAMLProvidersResponse_httpStatus :: Lens.Lens' ListSAMLProvidersResponse Prelude.Int
listSAMLProvidersResponse_httpStatus :: Lens' ListSAMLProvidersResponse Int
listSAMLProvidersResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSAMLProvidersResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListSAMLProvidersResponse' :: ListSAMLProvidersResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListSAMLProvidersResponse
s@ListSAMLProvidersResponse' {} Int
a -> ListSAMLProvidersResponse
s {$sel:httpStatus:ListSAMLProvidersResponse' :: Int
httpStatus = Int
a} :: ListSAMLProvidersResponse)
instance Prelude.NFData ListSAMLProvidersResponse where
rnf :: ListSAMLProvidersResponse -> ()
rnf ListSAMLProvidersResponse' {Int
Maybe [SAMLProviderListEntry]
httpStatus :: Int
sAMLProviderList :: Maybe [SAMLProviderListEntry]
$sel:httpStatus:ListSAMLProvidersResponse' :: ListSAMLProvidersResponse -> Int
$sel:sAMLProviderList:ListSAMLProvidersResponse' :: ListSAMLProvidersResponse -> Maybe [SAMLProviderListEntry]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [SAMLProviderListEntry]
sAMLProviderList
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus