{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.AWS.STS.Types.Product where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.STS.Types.Sum
data AssumedRoleUser = AssumedRoleUser'
{ _aruAssumedRoleId :: !Text
, _aruARN :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
assumedRoleUser
:: Text
-> Text
-> AssumedRoleUser
assumedRoleUser pAssumedRoleId_ pARN_ =
AssumedRoleUser'
{ _aruAssumedRoleId = pAssumedRoleId_
, _aruARN = pARN_
}
aruAssumedRoleId :: Lens' AssumedRoleUser Text
aruAssumedRoleId = lens _aruAssumedRoleId (\ s a -> s{_aruAssumedRoleId = a});
aruARN :: Lens' AssumedRoleUser Text
aruARN = lens _aruARN (\ s a -> s{_aruARN = a});
instance FromXML AssumedRoleUser where
parseXML x
= AssumedRoleUser' <$>
(x .@ "AssumedRoleId") <*> (x .@ "Arn")
instance Hashable AssumedRoleUser
instance NFData AssumedRoleUser
data Credentials = Credentials'
{ _cAccessKeyId :: !Text
, _cSecretAccessKey :: !Text
, _cSessionToken :: !Text
, _cExpiration :: !ISO8601
} deriving (Eq,Read,Show,Data,Typeable,Generic)
credentials
:: Text
-> Text
-> Text
-> UTCTime
-> Credentials
credentials pAccessKeyId_ pSecretAccessKey_ pSessionToken_ pExpiration_ =
Credentials'
{ _cAccessKeyId = pAccessKeyId_
, _cSecretAccessKey = pSecretAccessKey_
, _cSessionToken = pSessionToken_
, _cExpiration = _Time # pExpiration_
}
cAccessKeyId :: Lens' Credentials Text
cAccessKeyId = lens _cAccessKeyId (\ s a -> s{_cAccessKeyId = a});
cSecretAccessKey :: Lens' Credentials Text
cSecretAccessKey = lens _cSecretAccessKey (\ s a -> s{_cSecretAccessKey = a});
cSessionToken :: Lens' Credentials Text
cSessionToken = lens _cSessionToken (\ s a -> s{_cSessionToken = a});
cExpiration :: Lens' Credentials UTCTime
cExpiration = lens _cExpiration (\ s a -> s{_cExpiration = a}) . _Time;
instance FromXML Credentials where
parseXML x
= Credentials' <$>
(x .@ "AccessKeyId") <*> (x .@ "SecretAccessKey") <*>
(x .@ "SessionToken")
<*> (x .@ "Expiration")
instance Hashable Credentials
instance NFData Credentials
data FederatedUser = FederatedUser'
{ _fuFederatedUserId :: !Text
, _fuARN :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
federatedUser
:: Text
-> Text
-> FederatedUser
federatedUser pFederatedUserId_ pARN_ =
FederatedUser'
{ _fuFederatedUserId = pFederatedUserId_
, _fuARN = pARN_
}
fuFederatedUserId :: Lens' FederatedUser Text
fuFederatedUserId = lens _fuFederatedUserId (\ s a -> s{_fuFederatedUserId = a});
fuARN :: Lens' FederatedUser Text
fuARN = lens _fuARN (\ s a -> s{_fuARN = a});
instance FromXML FederatedUser where
parseXML x
= FederatedUser' <$>
(x .@ "FederatedUserId") <*> (x .@ "Arn")
instance Hashable FederatedUser
instance NFData FederatedUser