{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.EC2.DescribeSpotFleetInstances
(
describeSpotFleetInstances
, DescribeSpotFleetInstances
, dsfiNextToken
, dsfiDryRun
, dsfiMaxResults
, dsfiSpotFleetRequestId
, describeSpotFleetInstancesResponse
, DescribeSpotFleetInstancesResponse
, dsfirsNextToken
, dsfirsResponseStatus
, dsfirsSpotFleetRequestId
, dsfirsActiveInstances
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Lens
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 Rs DescribeSpotFleetInstances =
DescribeSpotFleetInstancesResponse
request = postQuery ec2
response
= receiveXML
(\ s h x ->
DescribeSpotFleetInstancesResponse' <$>
(x .@? "nextToken") <*> (pure (fromEnum s)) <*>
(x .@ "spotFleetRequestId")
<*>
(x .@? "activeInstanceSet" .!@ mempty >>=
parseXMLList "item"))
instance Hashable DescribeSpotFleetInstances
instance NFData DescribeSpotFleetInstances
instance ToHeaders DescribeSpotFleetInstances where
toHeaders = const mempty
instance ToPath DescribeSpotFleetInstances where
toPath = const "/"
instance ToQuery DescribeSpotFleetInstances where
toQuery DescribeSpotFleetInstances'{..}
= mconcat
["Action" =:
("DescribeSpotFleetInstances" :: ByteString),
"Version" =: ("2016-04-01" :: ByteString),
"NextToken" =: _dsfiNextToken,
"DryRun" =: _dsfiDryRun,
"MaxResults" =: _dsfiMaxResults,
"SpotFleetRequestId" =: _dsfiSpotFleetRequestId]
data DescribeSpotFleetInstancesResponse = DescribeSpotFleetInstancesResponse'
{ _dsfirsNextToken :: !(Maybe Text)
, _dsfirsResponseStatus :: !Int
, _dsfirsSpotFleetRequestId :: !Text
, _dsfirsActiveInstances :: ![ActiveInstance]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeSpotFleetInstancesResponse
:: Int
-> Text
-> DescribeSpotFleetInstancesResponse
describeSpotFleetInstancesResponse pResponseStatus_ pSpotFleetRequestId_ =
DescribeSpotFleetInstancesResponse'
{ _dsfirsNextToken = Nothing
, _dsfirsResponseStatus = pResponseStatus_
, _dsfirsSpotFleetRequestId = pSpotFleetRequestId_
, _dsfirsActiveInstances = mempty
}
dsfirsNextToken :: Lens' DescribeSpotFleetInstancesResponse (Maybe Text)
dsfirsNextToken = lens _dsfirsNextToken (\ s a -> s{_dsfirsNextToken = a});
dsfirsResponseStatus :: Lens' DescribeSpotFleetInstancesResponse Int
dsfirsResponseStatus = lens _dsfirsResponseStatus (\ s a -> s{_dsfirsResponseStatus = 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;
instance NFData DescribeSpotFleetInstancesResponse