{-# 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.ELBv2.RemoveTags
(
removeTags
, RemoveTags
, rtResourceARNs
, rtTagKeys
, removeTagsResponse
, RemoveTagsResponse
, rtrsResponseStatus
) where
import Network.AWS.ELBv2.Types
import Network.AWS.ELBv2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data RemoveTags = RemoveTags'
{ _rtResourceARNs :: ![Text]
, _rtTagKeys :: ![Text]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
removeTags
:: RemoveTags
removeTags =
RemoveTags'
{ _rtResourceARNs = mempty
, _rtTagKeys = mempty
}
rtResourceARNs :: Lens' RemoveTags [Text]
rtResourceARNs = lens _rtResourceARNs (\ s a -> s{_rtResourceARNs = a}) . _Coerce;
rtTagKeys :: Lens' RemoveTags [Text]
rtTagKeys = lens _rtTagKeys (\ s a -> s{_rtTagKeys = a}) . _Coerce;
instance AWSRequest RemoveTags where
type Rs RemoveTags = RemoveTagsResponse
request = postQuery eLBv2
response
= receiveXMLWrapper "RemoveTagsResult"
(\ s h x ->
RemoveTagsResponse' <$> (pure (fromEnum s)))
instance Hashable RemoveTags
instance NFData RemoveTags
instance ToHeaders RemoveTags where
toHeaders = const mempty
instance ToPath RemoveTags where
toPath = const "/"
instance ToQuery RemoveTags where
toQuery RemoveTags'{..}
= mconcat
["Action" =: ("RemoveTags" :: ByteString),
"Version" =: ("2015-12-01" :: ByteString),
"ResourceArns" =:
toQueryList "member" _rtResourceARNs,
"TagKeys" =: toQueryList "member" _rtTagKeys]
newtype RemoveTagsResponse = RemoveTagsResponse'
{ _rtrsResponseStatus :: Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
removeTagsResponse
:: Int
-> RemoveTagsResponse
removeTagsResponse pResponseStatus_ =
RemoveTagsResponse'
{ _rtrsResponseStatus = pResponseStatus_
}
rtrsResponseStatus :: Lens' RemoveTagsResponse Int
rtrsResponseStatus = lens _rtrsResponseStatus (\ s a -> s{_rtrsResponseStatus = a});
instance NFData RemoveTagsResponse