riak-1.0.0.0: src/Network/Riak/Search.hs
-- | module: Network.Riak.Search
-- copyright: (c) 2016 Sentenai
-- author: Antonio Nikishaev <me@lelf.lu>
-- license: Apache
--
-- Solr search
--
-- http://docs.basho.com/riak/2.1.3/dev/using/search/
module Network.Riak.Search where
import Network.Riak.Connection.Internal
import Network.Riak.Types.Internal
import qualified Network.Riak.Request as Req
import qualified Network.Riak.Response as Resp
import Control.Applicative
-- | Get an index info for @Just index@, or get all indexes for
-- @Nothing@.
getIndex :: Connection -> Maybe Index -> IO [IndexInfo]
getIndex conn ix = Resp.getIndex <$> exchange conn (Req.getIndex ix)
-- | Search by raw 'SearchQuery' request (a bytestring) using an
-- index.
searchRaw :: Connection -> SearchQuery -> Index -> IO [SearchResult]
searchRaw conn q ix = Resp.search <$> exchange conn (Req.search q ix)