module Network.AWS.EC2.DescribeKeyPairs
(
DescribeKeyPairs
, describeKeyPairs
, dkp1DryRun
, dkp1Filters
, dkp1KeyNames
, DescribeKeyPairsResponse
, describeKeyPairsResponse
, dkprKeyPairs
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.EC2.Types
import qualified GHC.Exts
data DescribeKeyPairs = DescribeKeyPairs
{ _dkp1DryRun :: Maybe Bool
, _dkp1Filters :: List "Filter" Filter
, _dkp1KeyNames :: List "KeyName" Text
} deriving (Eq, Show)
describeKeyPairs :: DescribeKeyPairs
describeKeyPairs = DescribeKeyPairs
{ _dkp1DryRun = Nothing
, _dkp1KeyNames = mempty
, _dkp1Filters = mempty
}
dkp1DryRun :: Lens' DescribeKeyPairs (Maybe Bool)
dkp1DryRun = lens _dkp1DryRun (\s a -> s { _dkp1DryRun = a })
dkp1Filters :: Lens' DescribeKeyPairs [Filter]
dkp1Filters = lens _dkp1Filters (\s a -> s { _dkp1Filters = a }) . _List
dkp1KeyNames :: Lens' DescribeKeyPairs [Text]
dkp1KeyNames = lens _dkp1KeyNames (\s a -> s { _dkp1KeyNames = a }) . _List
newtype DescribeKeyPairsResponse = DescribeKeyPairsResponse
{ _dkprKeyPairs :: List "item" KeyPairInfo
} deriving (Eq, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeKeyPairsResponse where
type Item DescribeKeyPairsResponse = KeyPairInfo
fromList = DescribeKeyPairsResponse . GHC.Exts.fromList
toList = GHC.Exts.toList . _dkprKeyPairs
describeKeyPairsResponse :: DescribeKeyPairsResponse
describeKeyPairsResponse = DescribeKeyPairsResponse
{ _dkprKeyPairs = mempty
}
dkprKeyPairs :: Lens' DescribeKeyPairsResponse [KeyPairInfo]
dkprKeyPairs = lens _dkprKeyPairs (\s a -> s { _dkprKeyPairs = a }) . _List
instance ToPath DescribeKeyPairs where
toPath = const "/"
instance ToQuery DescribeKeyPairs where
toQuery DescribeKeyPairs{..} = mconcat
[ "dryRun" =? _dkp1DryRun
, "Filter" =? _dkp1Filters
, "KeyName" =? _dkp1KeyNames
]
instance ToHeaders DescribeKeyPairs
instance AWSRequest DescribeKeyPairs where
type Sv DescribeKeyPairs = EC2
type Rs DescribeKeyPairs = DescribeKeyPairsResponse
request = post "DescribeKeyPairs"
response = xmlResponse
instance FromXML DescribeKeyPairsResponse where
parseXML x = DescribeKeyPairsResponse
<$> x .@ "keySet"