{-# 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.CloudSearch.DeleteExpression
(
deleteExpression
, DeleteExpression
, delDomainName
, delExpressionName
, deleteExpressionResponse
, DeleteExpressionResponse
, delrsResponseStatus
, delrsExpression
) where
import Network.AWS.CloudSearch.Types
import Network.AWS.CloudSearch.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteExpression = DeleteExpression'
{ _delDomainName :: !Text
, _delExpressionName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteExpression
:: Text
-> Text
-> DeleteExpression
deleteExpression pDomainName_ pExpressionName_ =
DeleteExpression'
{_delDomainName = pDomainName_, _delExpressionName = pExpressionName_}
delDomainName :: Lens' DeleteExpression Text
delDomainName = lens _delDomainName (\ s a -> s{_delDomainName = a})
delExpressionName :: Lens' DeleteExpression Text
delExpressionName = lens _delExpressionName (\ s a -> s{_delExpressionName = a})
instance AWSRequest DeleteExpression where
type Rs DeleteExpression = DeleteExpressionResponse
request = postQuery cloudSearch
response
= receiveXMLWrapper "DeleteExpressionResult"
(\ s h x ->
DeleteExpressionResponse' <$>
(pure (fromEnum s)) <*> (x .@ "Expression"))
instance Hashable DeleteExpression where
instance NFData DeleteExpression where
instance ToHeaders DeleteExpression where
toHeaders = const mempty
instance ToPath DeleteExpression where
toPath = const "/"
instance ToQuery DeleteExpression where
toQuery DeleteExpression'{..}
= mconcat
["Action" =: ("DeleteExpression" :: ByteString),
"Version" =: ("2013-01-01" :: ByteString),
"DomainName" =: _delDomainName,
"ExpressionName" =: _delExpressionName]
data DeleteExpressionResponse = DeleteExpressionResponse'
{ _delrsResponseStatus :: !Int
, _delrsExpression :: !ExpressionStatus
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteExpressionResponse
:: Int
-> ExpressionStatus
-> DeleteExpressionResponse
deleteExpressionResponse pResponseStatus_ pExpression_ =
DeleteExpressionResponse'
{_delrsResponseStatus = pResponseStatus_, _delrsExpression = pExpression_}
delrsResponseStatus :: Lens' DeleteExpressionResponse Int
delrsResponseStatus = lens _delrsResponseStatus (\ s a -> s{_delrsResponseStatus = a})
delrsExpression :: Lens' DeleteExpressionResponse ExpressionStatus
delrsExpression = lens _delrsExpression (\ s a -> s{_delrsExpression = a})
instance NFData DeleteExpressionResponse where