{-# 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.DeleteLaunchTemplateVersions
(
deleteLaunchTemplateVersions
, DeleteLaunchTemplateVersions
, dltvLaunchTemplateName
, dltvLaunchTemplateId
, dltvDryRun
, dltvVersions
, deleteLaunchTemplateVersionsResponse
, DeleteLaunchTemplateVersionsResponse
, dltvsrsSuccessfullyDeletedLaunchTemplateVersions
, dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions
, dltvsrsResponseStatus
) 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 DeleteLaunchTemplateVersions = DeleteLaunchTemplateVersions'
{ _dltvLaunchTemplateName :: !(Maybe Text)
, _dltvLaunchTemplateId :: !(Maybe Text)
, _dltvDryRun :: !(Maybe Bool)
, _dltvVersions :: ![Text]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteLaunchTemplateVersions
:: DeleteLaunchTemplateVersions
deleteLaunchTemplateVersions =
DeleteLaunchTemplateVersions'
{ _dltvLaunchTemplateName = Nothing
, _dltvLaunchTemplateId = Nothing
, _dltvDryRun = Nothing
, _dltvVersions = mempty
}
dltvLaunchTemplateName :: Lens' DeleteLaunchTemplateVersions (Maybe Text)
dltvLaunchTemplateName = lens _dltvLaunchTemplateName (\ s a -> s{_dltvLaunchTemplateName = a})
dltvLaunchTemplateId :: Lens' DeleteLaunchTemplateVersions (Maybe Text)
dltvLaunchTemplateId = lens _dltvLaunchTemplateId (\ s a -> s{_dltvLaunchTemplateId = a})
dltvDryRun :: Lens' DeleteLaunchTemplateVersions (Maybe Bool)
dltvDryRun = lens _dltvDryRun (\ s a -> s{_dltvDryRun = a})
dltvVersions :: Lens' DeleteLaunchTemplateVersions [Text]
dltvVersions = lens _dltvVersions (\ s a -> s{_dltvVersions = a}) . _Coerce
instance AWSRequest DeleteLaunchTemplateVersions
where
type Rs DeleteLaunchTemplateVersions =
DeleteLaunchTemplateVersionsResponse
request = postQuery ec2
response
= receiveXML
(\ s h x ->
DeleteLaunchTemplateVersionsResponse' <$>
(x .@? "successfullyDeletedLaunchTemplateVersionSet"
.!@ mempty
>>= may (parseXMLList "item"))
<*>
(x .@?
"unsuccessfullyDeletedLaunchTemplateVersionSet"
.!@ mempty
>>= may (parseXMLList "item"))
<*> (pure (fromEnum s)))
instance Hashable DeleteLaunchTemplateVersions where
instance NFData DeleteLaunchTemplateVersions where
instance ToHeaders DeleteLaunchTemplateVersions where
toHeaders = const mempty
instance ToPath DeleteLaunchTemplateVersions where
toPath = const "/"
instance ToQuery DeleteLaunchTemplateVersions where
toQuery DeleteLaunchTemplateVersions'{..}
= mconcat
["Action" =:
("DeleteLaunchTemplateVersions" :: ByteString),
"Version" =: ("2016-11-15" :: ByteString),
"LaunchTemplateName" =: _dltvLaunchTemplateName,
"LaunchTemplateId" =: _dltvLaunchTemplateId,
"DryRun" =: _dltvDryRun,
toQueryList "LaunchTemplateVersion" _dltvVersions]
data DeleteLaunchTemplateVersionsResponse = DeleteLaunchTemplateVersionsResponse'
{ _dltvsrsSuccessfullyDeletedLaunchTemplateVersions :: !(Maybe [DeleteLaunchTemplateVersionsResponseSuccessItem])
, _dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions :: !(Maybe [DeleteLaunchTemplateVersionsResponseErrorItem])
, _dltvsrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteLaunchTemplateVersionsResponse
:: Int
-> DeleteLaunchTemplateVersionsResponse
deleteLaunchTemplateVersionsResponse pResponseStatus_ =
DeleteLaunchTemplateVersionsResponse'
{ _dltvsrsSuccessfullyDeletedLaunchTemplateVersions = Nothing
, _dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions = Nothing
, _dltvsrsResponseStatus = pResponseStatus_
}
dltvsrsSuccessfullyDeletedLaunchTemplateVersions :: Lens' DeleteLaunchTemplateVersionsResponse [DeleteLaunchTemplateVersionsResponseSuccessItem]
dltvsrsSuccessfullyDeletedLaunchTemplateVersions = lens _dltvsrsSuccessfullyDeletedLaunchTemplateVersions (\ s a -> s{_dltvsrsSuccessfullyDeletedLaunchTemplateVersions = a}) . _Default . _Coerce
dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions :: Lens' DeleteLaunchTemplateVersionsResponse [DeleteLaunchTemplateVersionsResponseErrorItem]
dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions = lens _dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions (\ s a -> s{_dltvsrsUnsuccessfullyDeletedLaunchTemplateVersions = a}) . _Default . _Coerce
dltvsrsResponseStatus :: Lens' DeleteLaunchTemplateVersionsResponse Int
dltvsrsResponseStatus = lens _dltvsrsResponseStatus (\ s a -> s{_dltvsrsResponseStatus = a})
instance NFData DeleteLaunchTemplateVersionsResponse
where