module Network.AWS.EC2.DescribeSpotFleetRequests
(
DescribeSpotFleetRequests
, describeSpotFleetRequests
, dsfrDryRun
, dsfrMaxResults
, dsfrNextToken
, dsfrSpotFleetRequestIds
, DescribeSpotFleetRequestsResponse
, describeSpotFleetRequestsResponse
, dsfrrNextToken
, dsfrrSpotFleetRequestConfigs
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.EC2.Types
import qualified GHC.Exts
data DescribeSpotFleetRequests = DescribeSpotFleetRequests
{ _dsfrDryRun :: Maybe Bool
, _dsfrMaxResults :: Maybe Int
, _dsfrNextToken :: Maybe Text
, _dsfrSpotFleetRequestIds :: List "item" Text
} deriving (Eq, Ord, Read, Show)
describeSpotFleetRequests :: DescribeSpotFleetRequests
describeSpotFleetRequests = DescribeSpotFleetRequests
{ _dsfrDryRun = Nothing
, _dsfrSpotFleetRequestIds = mempty
, _dsfrNextToken = Nothing
, _dsfrMaxResults = Nothing
}
dsfrDryRun :: Lens' DescribeSpotFleetRequests (Maybe Bool)
dsfrDryRun = lens _dsfrDryRun (\s a -> s { _dsfrDryRun = a })
dsfrMaxResults :: Lens' DescribeSpotFleetRequests (Maybe Int)
dsfrMaxResults = lens _dsfrMaxResults (\s a -> s { _dsfrMaxResults = a })
dsfrNextToken :: Lens' DescribeSpotFleetRequests (Maybe Text)
dsfrNextToken = lens _dsfrNextToken (\s a -> s { _dsfrNextToken = a })
dsfrSpotFleetRequestIds :: Lens' DescribeSpotFleetRequests [Text]
dsfrSpotFleetRequestIds =
lens _dsfrSpotFleetRequestIds (\s a -> s { _dsfrSpotFleetRequestIds = a })
. _List
data DescribeSpotFleetRequestsResponse = DescribeSpotFleetRequestsResponse
{ _dsfrrNextToken :: Maybe Text
, _dsfrrSpotFleetRequestConfigs :: List "item" SpotFleetRequestConfig
} deriving (Eq, Read, Show)
describeSpotFleetRequestsResponse :: DescribeSpotFleetRequestsResponse
describeSpotFleetRequestsResponse = DescribeSpotFleetRequestsResponse
{ _dsfrrSpotFleetRequestConfigs = mempty
, _dsfrrNextToken = Nothing
}
dsfrrNextToken :: Lens' DescribeSpotFleetRequestsResponse (Maybe Text)
dsfrrNextToken = lens _dsfrrNextToken (\s a -> s { _dsfrrNextToken = a })
dsfrrSpotFleetRequestConfigs :: Lens' DescribeSpotFleetRequestsResponse [SpotFleetRequestConfig]
dsfrrSpotFleetRequestConfigs =
lens _dsfrrSpotFleetRequestConfigs
(\s a -> s { _dsfrrSpotFleetRequestConfigs = a })
. _List
instance ToPath DescribeSpotFleetRequests where
toPath = const "/"
instance ToQuery DescribeSpotFleetRequests where
toQuery DescribeSpotFleetRequests{..} = mconcat
[ "DryRun" =? _dsfrDryRun
, "MaxResults" =? _dsfrMaxResults
, "NextToken" =? _dsfrNextToken
, "SpotFleetRequestId" `toQueryList` _dsfrSpotFleetRequestIds
]
instance ToHeaders DescribeSpotFleetRequests
instance AWSRequest DescribeSpotFleetRequests where
type Sv DescribeSpotFleetRequests = EC2
type Rs DescribeSpotFleetRequests = DescribeSpotFleetRequestsResponse
request = post "DescribeSpotFleetRequests"
response = xmlResponse
instance FromXML DescribeSpotFleetRequestsResponse where
parseXML x = DescribeSpotFleetRequestsResponse
<$> x .@? "nextToken"
<*> x .@? "spotFleetRequestConfigSet" .!@ mempty