module Network.AWS.EC2.DescribeImportImageTasks
(
DescribeImportImageTasks
, describeImportImageTasks
, diitDryRun
, diitFilters
, diitImportTaskIds
, diitMaxResults
, diitNextToken
, DescribeImportImageTasksResponse
, describeImportImageTasksResponse
, diitrImportImageTasks
, diitrNextToken
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.EC2.Types
import qualified GHC.Exts
data DescribeImportImageTasks = DescribeImportImageTasks
{ _diitDryRun :: Maybe Bool
, _diitFilters :: List "Filter" Filter
, _diitImportTaskIds :: List "ImportTaskId" Text
, _diitMaxResults :: Maybe Int
, _diitNextToken :: Maybe Text
} deriving (Eq, Read, Show)
describeImportImageTasks :: DescribeImportImageTasks
describeImportImageTasks = DescribeImportImageTasks
{ _diitDryRun = Nothing
, _diitImportTaskIds = mempty
, _diitNextToken = Nothing
, _diitMaxResults = Nothing
, _diitFilters = mempty
}
diitDryRun :: Lens' DescribeImportImageTasks (Maybe Bool)
diitDryRun = lens _diitDryRun (\s a -> s { _diitDryRun = a })
diitFilters :: Lens' DescribeImportImageTasks [Filter]
diitFilters = lens _diitFilters (\s a -> s { _diitFilters = a }) . _List
diitImportTaskIds :: Lens' DescribeImportImageTasks [Text]
diitImportTaskIds =
lens _diitImportTaskIds (\s a -> s { _diitImportTaskIds = a })
. _List
diitMaxResults :: Lens' DescribeImportImageTasks (Maybe Int)
diitMaxResults = lens _diitMaxResults (\s a -> s { _diitMaxResults = a })
diitNextToken :: Lens' DescribeImportImageTasks (Maybe Text)
diitNextToken = lens _diitNextToken (\s a -> s { _diitNextToken = a })
data DescribeImportImageTasksResponse = DescribeImportImageTasksResponse
{ _diitrImportImageTasks :: List "item" ImportImageTask
, _diitrNextToken :: Maybe Text
} deriving (Eq, Read, Show)
describeImportImageTasksResponse :: DescribeImportImageTasksResponse
describeImportImageTasksResponse = DescribeImportImageTasksResponse
{ _diitrImportImageTasks = mempty
, _diitrNextToken = Nothing
}
diitrImportImageTasks :: Lens' DescribeImportImageTasksResponse [ImportImageTask]
diitrImportImageTasks =
lens _diitrImportImageTasks (\s a -> s { _diitrImportImageTasks = a })
. _List
diitrNextToken :: Lens' DescribeImportImageTasksResponse (Maybe Text)
diitrNextToken = lens _diitrNextToken (\s a -> s { _diitrNextToken = a })
instance ToPath DescribeImportImageTasks where
toPath = const "/"
instance ToQuery DescribeImportImageTasks where
toQuery DescribeImportImageTasks{..} = mconcat
[ "DryRun" =? _diitDryRun
, "Filters" `toQueryList` _diitFilters
, "ImportTaskId" `toQueryList` _diitImportTaskIds
, "MaxResults" =? _diitMaxResults
, "NextToken" =? _diitNextToken
]
instance ToHeaders DescribeImportImageTasks
instance AWSRequest DescribeImportImageTasks where
type Sv DescribeImportImageTasks = EC2
type Rs DescribeImportImageTasks = DescribeImportImageTasksResponse
request = post "DescribeImportImageTasks"
response = xmlResponse
instance FromXML DescribeImportImageTasksResponse where
parseXML x = DescribeImportImageTasksResponse
<$> x .@? "importImageTaskSet" .!@ mempty
<*> x .@? "nextToken"