module Network.AWS.CloudSearch.DeleteSuggester
(
DeleteSuggester
, deleteSuggester
, ds3DomainName
, ds3SuggesterName
, DeleteSuggesterResponse
, deleteSuggesterResponse
, dsr1Suggester
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.CloudSearch.Types
import qualified GHC.Exts
data DeleteSuggester = DeleteSuggester
{ _ds3DomainName :: Text
, _ds3SuggesterName :: Text
} deriving (Eq, Ord, Show)
deleteSuggester :: Text
-> Text
-> DeleteSuggester
deleteSuggester p1 p2 = DeleteSuggester
{ _ds3DomainName = p1
, _ds3SuggesterName = p2
}
ds3DomainName :: Lens' DeleteSuggester Text
ds3DomainName = lens _ds3DomainName (\s a -> s { _ds3DomainName = a })
ds3SuggesterName :: Lens' DeleteSuggester Text
ds3SuggesterName = lens _ds3SuggesterName (\s a -> s { _ds3SuggesterName = a })
newtype DeleteSuggesterResponse = DeleteSuggesterResponse
{ _dsr1Suggester :: SuggesterStatus
} deriving (Eq, Show)
deleteSuggesterResponse :: SuggesterStatus
-> DeleteSuggesterResponse
deleteSuggesterResponse p1 = DeleteSuggesterResponse
{ _dsr1Suggester = p1
}
dsr1Suggester :: Lens' DeleteSuggesterResponse SuggesterStatus
dsr1Suggester = lens _dsr1Suggester (\s a -> s { _dsr1Suggester = a })
instance ToPath DeleteSuggester where
toPath = const "/"
instance ToQuery DeleteSuggester where
toQuery DeleteSuggester{..} = mconcat
[ "DomainName" =? _ds3DomainName
, "SuggesterName" =? _ds3SuggesterName
]
instance ToHeaders DeleteSuggester
instance AWSRequest DeleteSuggester where
type Sv DeleteSuggester = CloudSearch
type Rs DeleteSuggester = DeleteSuggesterResponse
request = post "DeleteSuggester"
response = xmlResponse
instance FromXML DeleteSuggesterResponse where
parseXML = withElement "DeleteSuggesterResult" $ \x -> DeleteSuggesterResponse
<$> x .@ "Suggester"