{-# 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.Redshift.DeleteTags
(
deleteTags
, DeleteTags
, dtsResourceName
, dtsTagKeys
, deleteTagsResponse
, DeleteTagsResponse
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Redshift.Types
import Network.AWS.Redshift.Types.Product
import Network.AWS.Request
import Network.AWS.Response
data DeleteTags = DeleteTags'
{ _dtsResourceName :: !Text
, _dtsTagKeys :: ![Text]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteTags
:: Text
-> DeleteTags
deleteTags pResourceName_ =
DeleteTags' {_dtsResourceName = pResourceName_, _dtsTagKeys = mempty}
dtsResourceName :: Lens' DeleteTags Text
dtsResourceName = lens _dtsResourceName (\ s a -> s{_dtsResourceName = a})
dtsTagKeys :: Lens' DeleteTags [Text]
dtsTagKeys = lens _dtsTagKeys (\ s a -> s{_dtsTagKeys = a}) . _Coerce
instance AWSRequest DeleteTags where
type Rs DeleteTags = DeleteTagsResponse
request = postQuery redshift
response = receiveNull DeleteTagsResponse'
instance Hashable DeleteTags where
instance NFData DeleteTags where
instance ToHeaders DeleteTags where
toHeaders = const mempty
instance ToPath DeleteTags where
toPath = const "/"
instance ToQuery DeleteTags where
toQuery DeleteTags'{..}
= mconcat
["Action" =: ("DeleteTags" :: ByteString),
"Version" =: ("2012-12-01" :: ByteString),
"ResourceName" =: _dtsResourceName,
"TagKeys" =: toQueryList "TagKey" _dtsTagKeys]
data DeleteTagsResponse =
DeleteTagsResponse'
deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteTagsResponse
:: DeleteTagsResponse
deleteTagsResponse = DeleteTagsResponse'
instance NFData DeleteTagsResponse where