module Network.AWS.EC2.DescribeConversionTasks
(
DescribeConversionTasks
, describeConversionTasks
, dctConversionTaskIds
, dctDryRun
, dctFilters
, DescribeConversionTasksResponse
, describeConversionTasksResponse
, dctrConversionTasks
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.EC2.Types
import qualified GHC.Exts
data DescribeConversionTasks = DescribeConversionTasks
{ _dctConversionTaskIds :: List "item" Text
, _dctDryRun :: Maybe Bool
, _dctFilters :: List "Filter" Filter
} deriving (Eq, Read, Show)
describeConversionTasks :: DescribeConversionTasks
describeConversionTasks = DescribeConversionTasks
{ _dctDryRun = Nothing
, _dctFilters = mempty
, _dctConversionTaskIds = mempty
}
dctConversionTaskIds :: Lens' DescribeConversionTasks [Text]
dctConversionTaskIds =
lens _dctConversionTaskIds (\s a -> s { _dctConversionTaskIds = a })
. _List
dctDryRun :: Lens' DescribeConversionTasks (Maybe Bool)
dctDryRun = lens _dctDryRun (\s a -> s { _dctDryRun = a })
dctFilters :: Lens' DescribeConversionTasks [Filter]
dctFilters = lens _dctFilters (\s a -> s { _dctFilters = a }) . _List
newtype DescribeConversionTasksResponse = DescribeConversionTasksResponse
{ _dctrConversionTasks :: List "item" ConversionTask
} deriving (Eq, Read, Show, Monoid, Semigroup)
describeConversionTasksResponse :: DescribeConversionTasksResponse
describeConversionTasksResponse = DescribeConversionTasksResponse
{ _dctrConversionTasks = mempty
}
dctrConversionTasks :: Lens' DescribeConversionTasksResponse [ConversionTask]
dctrConversionTasks =
lens _dctrConversionTasks (\s a -> s { _dctrConversionTasks = a })
. _List
instance ToPath DescribeConversionTasks where
toPath = const "/"
instance ToQuery DescribeConversionTasks where
toQuery DescribeConversionTasks{..} = mconcat
[ "ConversionTaskId" `toQueryList` _dctConversionTaskIds
, "DryRun" =? _dctDryRun
, "Filter" `toQueryList` _dctFilters
]
instance ToHeaders DescribeConversionTasks
instance AWSRequest DescribeConversionTasks where
type Sv DescribeConversionTasks = EC2
type Rs DescribeConversionTasks = DescribeConversionTasksResponse
request = post "DescribeConversionTasks"
response = xmlResponse
instance FromXML DescribeConversionTasksResponse where
parseXML x = DescribeConversionTasksResponse
<$> x .@? "conversionTasks" .!@ mempty