module Network.AWS.EC2.DescribeSpotFleetInstances
(
describeSpotFleetInstances
, DescribeSpotFleetInstances
, dsfiNextToken
, dsfiDryRun
, dsfiMaxResults
, dsfiSpotFleetRequestId
, describeSpotFleetInstancesResponse
, DescribeSpotFleetInstancesResponse
, dsfirsNextToken
, dsfirsStatus
, dsfirsSpotFleetRequestId
, dsfirsActiveInstances
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeSpotFleetInstances = DescribeSpotFleetInstances'
{ _dsfiNextToken :: !(Maybe Text)
, _dsfiDryRun :: !(Maybe Bool)
, _dsfiMaxResults :: !(Maybe Int)
, _dsfiSpotFleetRequestId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeSpotFleetInstances
:: Text
-> DescribeSpotFleetInstances
describeSpotFleetInstances pSpotFleetRequestId_ =
DescribeSpotFleetInstances'
{ _dsfiNextToken = Nothing
, _dsfiDryRun = Nothing
, _dsfiMaxResults = Nothing
, _dsfiSpotFleetRequestId = pSpotFleetRequestId_
}
dsfiNextToken :: Lens' DescribeSpotFleetInstances (Maybe Text)
dsfiNextToken = lens _dsfiNextToken (\ s a -> s{_dsfiNextToken = a});
dsfiDryRun :: Lens' DescribeSpotFleetInstances (Maybe Bool)
dsfiDryRun = lens _dsfiDryRun (\ s a -> s{_dsfiDryRun = a});
dsfiMaxResults :: Lens' DescribeSpotFleetInstances (Maybe Int)
dsfiMaxResults = lens _dsfiMaxResults (\ s a -> s{_dsfiMaxResults = a});
dsfiSpotFleetRequestId :: Lens' DescribeSpotFleetInstances Text
dsfiSpotFleetRequestId = lens _dsfiSpotFleetRequestId (\ s a -> s{_dsfiSpotFleetRequestId = a});
instance AWSRequest DescribeSpotFleetInstances where
type Sv DescribeSpotFleetInstances = EC2
type Rs DescribeSpotFleetInstances =
DescribeSpotFleetInstancesResponse
request = post
response
= receiveXML
(\ s h x ->
DescribeSpotFleetInstancesResponse' <$>
(x .@? "nextToken") <*> (pure (fromEnum s)) <*>
(x .@ "spotFleetRequestId")
<*>
(x .@? "activeInstanceSet" .!@ mempty >>=
parseXMLList "item"))
instance ToHeaders DescribeSpotFleetInstances where
toHeaders = const mempty
instance ToPath DescribeSpotFleetInstances where
toPath = const "/"
instance ToQuery DescribeSpotFleetInstances where
toQuery DescribeSpotFleetInstances'{..}
= mconcat
["Action" =:
("DescribeSpotFleetInstances" :: ByteString),
"Version" =: ("2015-04-15" :: ByteString),
"NextToken" =: _dsfiNextToken,
"DryRun" =: _dsfiDryRun,
"MaxResults" =: _dsfiMaxResults,
"SpotFleetRequestId" =: _dsfiSpotFleetRequestId]
data DescribeSpotFleetInstancesResponse = DescribeSpotFleetInstancesResponse'
{ _dsfirsNextToken :: !(Maybe Text)
, _dsfirsStatus :: !Int
, _dsfirsSpotFleetRequestId :: !Text
, _dsfirsActiveInstances :: ![ActiveInstance]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeSpotFleetInstancesResponse
:: Int
-> Text
-> DescribeSpotFleetInstancesResponse
describeSpotFleetInstancesResponse pStatus_ pSpotFleetRequestId_ =
DescribeSpotFleetInstancesResponse'
{ _dsfirsNextToken = Nothing
, _dsfirsStatus = pStatus_
, _dsfirsSpotFleetRequestId = pSpotFleetRequestId_
, _dsfirsActiveInstances = mempty
}
dsfirsNextToken :: Lens' DescribeSpotFleetInstancesResponse (Maybe Text)
dsfirsNextToken = lens _dsfirsNextToken (\ s a -> s{_dsfirsNextToken = a});
dsfirsStatus :: Lens' DescribeSpotFleetInstancesResponse Int
dsfirsStatus = lens _dsfirsStatus (\ s a -> s{_dsfirsStatus = a});
dsfirsSpotFleetRequestId :: Lens' DescribeSpotFleetInstancesResponse Text
dsfirsSpotFleetRequestId = lens _dsfirsSpotFleetRequestId (\ s a -> s{_dsfirsSpotFleetRequestId = a});
dsfirsActiveInstances :: Lens' DescribeSpotFleetInstancesResponse [ActiveInstance]
dsfirsActiveInstances = lens _dsfirsActiveInstances (\ s a -> s{_dsfirsActiveInstances = a}) . _Coerce;