module Network.AWS.Kinesis.RemoveTagsFromStream
(
removeTagsFromStream
, RemoveTagsFromStream
, rtfsStreamName
, rtfsTagKeys
, removeTagsFromStreamResponse
, RemoveTagsFromStreamResponse
) where
import Network.AWS.Kinesis.Types
import Network.AWS.Kinesis.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data RemoveTagsFromStream = RemoveTagsFromStream'
{ _rtfsStreamName :: !Text
, _rtfsTagKeys :: !(List1 Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
removeTagsFromStream
:: Text
-> NonEmpty Text
-> RemoveTagsFromStream
removeTagsFromStream pStreamName_ pTagKeys_ =
RemoveTagsFromStream'
{ _rtfsStreamName = pStreamName_
, _rtfsTagKeys = _List1 # pTagKeys_
}
rtfsStreamName :: Lens' RemoveTagsFromStream Text
rtfsStreamName = lens _rtfsStreamName (\ s a -> s{_rtfsStreamName = a});
rtfsTagKeys :: Lens' RemoveTagsFromStream (NonEmpty Text)
rtfsTagKeys = lens _rtfsTagKeys (\ s a -> s{_rtfsTagKeys = a}) . _List1;
instance AWSRequest RemoveTagsFromStream where
type Rs RemoveTagsFromStream =
RemoveTagsFromStreamResponse
request = postJSON kinesis
response = receiveNull RemoveTagsFromStreamResponse'
instance ToHeaders RemoveTagsFromStream where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("Kinesis_20131202.RemoveTagsFromStream" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON RemoveTagsFromStream where
toJSON RemoveTagsFromStream'{..}
= object
(catMaybes
[Just ("StreamName" .= _rtfsStreamName),
Just ("TagKeys" .= _rtfsTagKeys)])
instance ToPath RemoveTagsFromStream where
toPath = const "/"
instance ToQuery RemoveTagsFromStream where
toQuery = const mempty
data RemoveTagsFromStreamResponse =
RemoveTagsFromStreamResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
removeTagsFromStreamResponse
:: RemoveTagsFromStreamResponse
removeTagsFromStreamResponse = RemoveTagsFromStreamResponse'