module Network.AWS.CloudSearch.DefineSuggester
(
defineSuggester
, DefineSuggester
, defDomainName
, defSuggester
, defineSuggesterResponse
, DefineSuggesterResponse
, dsrsResponseStatus
, dsrsSuggester
) 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 DefineSuggester = DefineSuggester'
{ _defDomainName :: !Text
, _defSuggester :: !Suggester
} deriving (Eq,Read,Show,Data,Typeable,Generic)
defineSuggester
:: Text
-> Suggester
-> DefineSuggester
defineSuggester pDomainName_ pSuggester_ =
DefineSuggester'
{ _defDomainName = pDomainName_
, _defSuggester = pSuggester_
}
defDomainName :: Lens' DefineSuggester Text
defDomainName = lens _defDomainName (\ s a -> s{_defDomainName = a});
defSuggester :: Lens' DefineSuggester Suggester
defSuggester = lens _defSuggester (\ s a -> s{_defSuggester = a});
instance AWSRequest DefineSuggester where
type Rs DefineSuggester = DefineSuggesterResponse
request = postQuery cloudSearch
response
= receiveXMLWrapper "DefineSuggesterResult"
(\ s h x ->
DefineSuggesterResponse' <$>
(pure (fromEnum s)) <*> (x .@ "Suggester"))
instance Hashable DefineSuggester
instance NFData DefineSuggester
instance ToHeaders DefineSuggester where
toHeaders = const mempty
instance ToPath DefineSuggester where
toPath = const "/"
instance ToQuery DefineSuggester where
toQuery DefineSuggester'{..}
= mconcat
["Action" =: ("DefineSuggester" :: ByteString),
"Version" =: ("2013-01-01" :: ByteString),
"DomainName" =: _defDomainName,
"Suggester" =: _defSuggester]
data DefineSuggesterResponse = DefineSuggesterResponse'
{ _dsrsResponseStatus :: !Int
, _dsrsSuggester :: !SuggesterStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
defineSuggesterResponse
:: Int
-> SuggesterStatus
-> DefineSuggesterResponse
defineSuggesterResponse pResponseStatus_ pSuggester_ =
DefineSuggesterResponse'
{ _dsrsResponseStatus = pResponseStatus_
, _dsrsSuggester = pSuggester_
}
dsrsResponseStatus :: Lens' DefineSuggesterResponse Int
dsrsResponseStatus = lens _dsrsResponseStatus (\ s a -> s{_dsrsResponseStatus = a});
dsrsSuggester :: Lens' DefineSuggesterResponse SuggesterStatus
dsrsSuggester = lens _dsrsSuggester (\ s a -> s{_dsrsSuggester = a});
instance NFData DefineSuggesterResponse