@@ -125,7 +125,7 @@ newtype Server = Server String deriving (Show)
125125-- let (sts, err) = decode (responseBody resp) :: ElasticsearchError
126126-- if T.isInfixOf "IndexAlreadyExistsException" error
127127-- then IndexAlreadyExistsError
128−-- else
128+-- else
129129
130130type Reply = Network.HTTP.Conduit.Response L.ByteString
131131type Method = NHTM.Method
@@ -300,33 +300,48 @@ data BooleanOperator = AND | OR deriving (Show)
300300
301301type DisMax = Bool -- "use_dis_max"
302302newtype TieBreaker = TieBreaker Int deriving (Show)
303−data QueryField = DefaultField Text | Fields [Text] DisMax TieBreaker deriving (Show)
303+data QueryField = DefaultField Text
304+ | Fields [Text] DisMax TieBreaker deriving (Show)
304305
305306data QueryStringQuery =
306307 QueryStringQuery { query :: QueryString
307− , field :: Maybe QueryField -- default _all
308− , defaultOperator :: Maybe BooleanOperator -- default OR
309− , analyzer :: Maybe Text -- analyzer name
310− , allowLeadingWildcard :: Maybe Bool -- default true
311− , lowercaseExpandedTerms :: Maybe Bool -- default true
312− , enablePositionIncrements :: Maybe Bool -- default true
313− , fuzzyMaxExpansions :: Maybe Int -- default 50
314− , fuzziness :: Maybe Text -- Fuzziness -- default AUTO, add type later
308+ -- default _all
309+ , field :: Maybe QueryField
310+ -- default OR
311+ , defaultOperator :: Maybe BooleanOperator
312+ -- analyzer name
313+ , analyzer :: Maybe Text
314+ -- default true
315+ , allowLeadingWildcard :: Maybe Bool
316+ -- default true
317+ , lowercaseExpandedTerms :: Maybe Bool
318+ -- default true
319+ , enablePositionIncrements :: Maybe Bool
320+ -- default 50
321+ , fuzzyMaxExpansions :: Maybe Int
322+ -- Fuzziness -- default AUTO, add type later
323+ , fuzziness :: Maybe Text
315324 , fuzzyPrefixLength :: Maybe Int -- default 0
316− , phraseSlop :: Maybe Int -- default 0, 0 means exact phrase matches
317− , boost :: Maybe Double -- default 1.0
318− , analyzeWildcard :: Maybe Bool -- default false, true forces wildcard analysis
319− , autoGeneratePhraseQueries :: Maybe Bool -- default false
320− , minimumShouldMatch :: Maybe Text -- # "should" clauses in the boolean query should match
321− -- Text to handle weird % and other cases. Needs type
322− , lenient :: Maybe Bool -- default false, true shuts off format based failures
323− , locale :: Maybe Text -- default ROOT, locale used for string conversions
325+ -- default 0, 0 means exact phrase matches
326+ , phraseSlop :: Maybe Int
327+ -- default 1.0
328+ , boost :: Maybe Double
329+ -- default false, true forces wildcard analysis
330+ , analyzeWildcard :: Maybe Bool
331+ -- default false
332+ , autoGeneratePhraseQueries :: Maybe Bool
333+ -- # "should" clauses in the boolean query should match
334+ , minimumShouldMatch :: Maybe Text
335+ -- Text to handle weird % and other cases. Needs type
336+ -- default false, true shuts off format based failures
337+ , lenient :: Maybe Bool
338+ -- default ROOT, locale used for string conversions
339+ , locale :: Maybe Text
324340 } deriving (Show)
325341
326342emptyQueryStringQuery = QueryStringQuery "" Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing
327343queryStringQuery query = emptyQueryStringQuery { query = query }
328344
329−-- ugh
330345type FieldName = Text
331346
332347type Cache = Bool -- caching on/off