module Network.AWS.IAM.GetAccessKeyLastUsed
(
GetAccessKeyLastUsed
, getAccessKeyLastUsed
, gakluAccessKeyId
, GetAccessKeyLastUsedResponse
, getAccessKeyLastUsedResponse
, gaklurAccessKeyLastUsed
, gaklurUserName
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.IAM.Types
import qualified GHC.Exts
newtype GetAccessKeyLastUsed = GetAccessKeyLastUsed
{ _gakluAccessKeyId :: Text
} deriving (Eq, Ord, Read, Show, Monoid, IsString)
getAccessKeyLastUsed :: Text
-> GetAccessKeyLastUsed
getAccessKeyLastUsed p1 = GetAccessKeyLastUsed
{ _gakluAccessKeyId = p1
}
gakluAccessKeyId :: Lens' GetAccessKeyLastUsed Text
gakluAccessKeyId = lens _gakluAccessKeyId (\s a -> s { _gakluAccessKeyId = a })
data GetAccessKeyLastUsedResponse = GetAccessKeyLastUsedResponse
{ _gaklurAccessKeyLastUsed :: Maybe AccessKeyLastUsed
, _gaklurUserName :: Maybe Text
} deriving (Eq, Read, Show)
getAccessKeyLastUsedResponse :: GetAccessKeyLastUsedResponse
getAccessKeyLastUsedResponse = GetAccessKeyLastUsedResponse
{ _gaklurUserName = Nothing
, _gaklurAccessKeyLastUsed = Nothing
}
gaklurAccessKeyLastUsed :: Lens' GetAccessKeyLastUsedResponse (Maybe AccessKeyLastUsed)
gaklurAccessKeyLastUsed =
lens _gaklurAccessKeyLastUsed (\s a -> s { _gaklurAccessKeyLastUsed = a })
gaklurUserName :: Lens' GetAccessKeyLastUsedResponse (Maybe Text)
gaklurUserName = lens _gaklurUserName (\s a -> s { _gaklurUserName = a })
instance ToPath GetAccessKeyLastUsed where
toPath = const "/"
instance ToQuery GetAccessKeyLastUsed where
toQuery GetAccessKeyLastUsed{..} = mconcat
[ "AccessKeyId" =? _gakluAccessKeyId
]
instance ToHeaders GetAccessKeyLastUsed
instance AWSRequest GetAccessKeyLastUsed where
type Sv GetAccessKeyLastUsed = IAM
type Rs GetAccessKeyLastUsed = GetAccessKeyLastUsedResponse
request = post "GetAccessKeyLastUsed"
response = xmlResponse
instance FromXML GetAccessKeyLastUsedResponse where
parseXML = withElement "GetAccessKeyLastUsedResult" $ \x -> GetAccessKeyLastUsedResponse
<$> x .@? "AccessKeyLastUsed"
<*> x .@? "UserName"