module Network.AWS.IAM.GetSAMLProvider
(
getSAMLProvider
, GetSAMLProvider
, gsamlpSAMLProviderARN
, getSAMLProviderResponse
, GetSAMLProviderResponse
, gsamlprsCreateDate
, gsamlprsValidUntil
, gsamlprsSAMLMetadataDocument
, gsamlprsStatus
) where
import Network.AWS.IAM.Types
import Network.AWS.IAM.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype GetSAMLProvider = GetSAMLProvider'
{ _gsamlpSAMLProviderARN :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
getSAMLProvider
:: Text
-> GetSAMLProvider
getSAMLProvider pSAMLProviderARN_ =
GetSAMLProvider'
{ _gsamlpSAMLProviderARN = pSAMLProviderARN_
}
gsamlpSAMLProviderARN :: Lens' GetSAMLProvider Text
gsamlpSAMLProviderARN = lens _gsamlpSAMLProviderARN (\ s a -> s{_gsamlpSAMLProviderARN = a});
instance AWSRequest GetSAMLProvider where
type Sv GetSAMLProvider = IAM
type Rs GetSAMLProvider = GetSAMLProviderResponse
request = postQuery
response
= receiveXMLWrapper "GetSAMLProviderResult"
(\ s h x ->
GetSAMLProviderResponse' <$>
(x .@? "CreateDate") <*> (x .@? "ValidUntil") <*>
(x .@? "SAMLMetadataDocument")
<*> (pure (fromEnum s)))
instance ToHeaders GetSAMLProvider where
toHeaders = const mempty
instance ToPath GetSAMLProvider where
toPath = const "/"
instance ToQuery GetSAMLProvider where
toQuery GetSAMLProvider'{..}
= mconcat
["Action" =: ("GetSAMLProvider" :: ByteString),
"Version" =: ("2010-05-08" :: ByteString),
"SAMLProviderArn" =: _gsamlpSAMLProviderARN]
data GetSAMLProviderResponse = GetSAMLProviderResponse'
{ _gsamlprsCreateDate :: !(Maybe ISO8601)
, _gsamlprsValidUntil :: !(Maybe ISO8601)
, _gsamlprsSAMLMetadataDocument :: !(Maybe Text)
, _gsamlprsStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
getSAMLProviderResponse
:: Int
-> GetSAMLProviderResponse
getSAMLProviderResponse pStatus_ =
GetSAMLProviderResponse'
{ _gsamlprsCreateDate = Nothing
, _gsamlprsValidUntil = Nothing
, _gsamlprsSAMLMetadataDocument = Nothing
, _gsamlprsStatus = pStatus_
}
gsamlprsCreateDate :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
gsamlprsCreateDate = lens _gsamlprsCreateDate (\ s a -> s{_gsamlprsCreateDate = a}) . mapping _Time;
gsamlprsValidUntil :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
gsamlprsValidUntil = lens _gsamlprsValidUntil (\ s a -> s{_gsamlprsValidUntil = a}) . mapping _Time;
gsamlprsSAMLMetadataDocument :: Lens' GetSAMLProviderResponse (Maybe Text)
gsamlprsSAMLMetadataDocument = lens _gsamlprsSAMLMetadataDocument (\ s a -> s{_gsamlprsSAMLMetadataDocument = a});
gsamlprsStatus :: Lens' GetSAMLProviderResponse Int
gsamlprsStatus = lens _gsamlprsStatus (\ s a -> s{_gsamlprsStatus = a});