Table of Contents

Class LuceneFilteringBooleanOperationBase

Namespace
Examine.Lucene.Search
Assembly
Examine.Lucene.dll

Boolean Lucene Filtering Operation Base

public abstract class LuceneFilteringBooleanOperationBase : IFilter, IBooleanFilterOperation, INestedBooleanFilterOperation
Inheritance
LuceneFilteringBooleanOperationBase
Implements
Derived
Inherited Members

Constructors

LuceneFilteringBooleanOperationBase(LuceneSearchFilteringOperationBase)

Constructor

public LuceneFilteringBooleanOperationBase(LuceneSearchFilteringOperationBase luceneSearch)

Parameters

luceneSearch LuceneSearchFilteringOperationBase

Methods

And()

Sets the next operation to be AND

public abstract INestedFilter And()

Returns

INestedFilter

And(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public INestedBooleanFilterOperation And(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

INestedBooleanFilterOperation

AndFilter()

Sets the next operation to be AND

public abstract IFilter AndFilter()

Returns

IFilter

AndFilter(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public IBooleanFilterOperation AndFilter(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

IBooleanFilterOperation

AndNot(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public INestedBooleanFilterOperation AndNot(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

INestedBooleanFilterOperation

AndNotFilter(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public IBooleanFilterOperation AndNotFilter(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

IBooleanFilterOperation

ChainFilters(Action<IFilterChain>)

Chain filters

public abstract IBooleanFilterOperation ChainFilters(Action<IFilterChain> chain)

Parameters

chain Action<IFilterChain>

Returns

IBooleanFilterOperation

DoubleRangeFilter(string, double?, double?, bool, bool)

Matches items as defined by the IIndexFieldValueType used for the fields specified. If a type is not defined for a field name, or the type does not implement IIndexRangeValueType for the types of min and max, nothing will be added

public abstract IBooleanFilterOperation DoubleRangeFilter(string field, double? min, double? max, bool minInclusive, bool maxInclusive)

Parameters

field string
min double?
max double?
minInclusive bool
maxInclusive bool

Returns

IBooleanFilterOperation

FieldValueExistsFilter(string)

Document must have value for field

public abstract IBooleanFilterOperation FieldValueExistsFilter(string field)

Parameters

field string

Returns

IBooleanFilterOperation

FieldValueNotExistsFilter(string)

Document must not have value for field

public abstract IBooleanFilterOperation FieldValueNotExistsFilter(string field)

Parameters

field string

Returns

IBooleanFilterOperation

FloatRangeFilter(string, float?, float?, bool, bool)

Matches items as defined by the IIndexFieldValueType used for the fields specified. If a type is not defined for a field name, or the type does not implement IIndexRangeValueType for the types of min and max, nothing will be added

public abstract IBooleanFilterOperation FloatRangeFilter(string field, float? min, float? max, bool minInclusive, bool maxInclusive)

Parameters

field string
min float?
max float?
minInclusive bool
maxInclusive bool

Returns

IBooleanFilterOperation

IntRangeFilter(string, int?, int?, bool, bool)

Matches items as defined by the IIndexFieldValueType used for the fields specified. If a type is not defined for a field name, or the type does not implement IIndexRangeValueType for the types of min and max, nothing will be added

public abstract IBooleanFilterOperation IntRangeFilter(string field, int? min, int? max, bool minInclusive, bool maxInclusive)

Parameters

field string
min int?
max int?
minInclusive bool
maxInclusive bool

Returns

IBooleanFilterOperation

LongRangeFilter(string, long?, long?, bool, bool)

Matches items as defined by the IIndexFieldValueType used for the fields specified. If a type is not defined for a field name, or the type does not implement IIndexRangeValueType for the types of min and max, nothing will be added

public abstract IBooleanFilterOperation LongRangeFilter(string field, long? min, long? max, bool minInclusive, bool maxInclusive)

Parameters

field string
min long?
max long?
minInclusive bool
maxInclusive bool

Returns

IBooleanFilterOperation

Not()

Sets the next operation to be NOT

public abstract INestedFilter Not()

Returns

INestedFilter

NotFilter()

Sets the next operation to be NOT

public abstract IFilter NotFilter()

Returns

IFilter

Or()

Sets the next operation to be OR

public abstract INestedFilter Or()

Returns

INestedFilter

Or(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public INestedBooleanFilterOperation Or(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

INestedBooleanFilterOperation

OrFilter()

Sets the next operation to be OR

public abstract IFilter OrFilter()

Returns

IFilter

OrFilter(Func<INestedFilter, INestedBooleanFilterOperation>, BooleanOperation)

Adds the nested filter

public IBooleanFilterOperation OrFilter(Func<INestedFilter, INestedBooleanFilterOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedFilter, INestedBooleanFilterOperation>
defaultOp BooleanOperation

Returns

IBooleanFilterOperation

QueryFilter(Func<INestedQuery, INestedBooleanOperation>, BooleanOperation)

Must match query

public abstract IBooleanFilterOperation QueryFilter(Func<INestedQuery, INestedBooleanOperation> inner, BooleanOperation defaultOp = BooleanOperation.And)

Parameters

inner Func<INestedQuery, INestedBooleanOperation>
defaultOp BooleanOperation

Returns

IBooleanFilterOperation

SpatialOperationFilter(string, ExamineSpatialOperation, Func<IExamineSpatialShapeFactory, IExamineSpatialShape>)

Executes Spatial operation as a Filter on field and shape

public abstract IBooleanFilterOperation SpatialOperationFilter(string field, ExamineSpatialOperation spatialOperation, Func<IExamineSpatialShapeFactory, IExamineSpatialShape> shape)

Parameters

field string

Index field name

spatialOperation ExamineSpatialOperation
shape Func<IExamineSpatialShapeFactory, IExamineSpatialShape>

Shape

Returns

IBooleanFilterOperation

TermFilter(FilterTerm)

Term must match

public abstract IBooleanFilterOperation TermFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

IBooleanFilterOperation

TermPrefixFilter(FilterTerm)

Term must match as prefix

public abstract IBooleanFilterOperation TermPrefixFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

IBooleanFilterOperation

TermsFilter(IEnumerable<FilterTerm>)

Terms must match

public abstract IBooleanFilterOperation TermsFilter(IEnumerable<FilterTerm> terms)

Parameters

terms IEnumerable<FilterTerm>

Returns

IBooleanFilterOperation