Table of Contents

Class LuceneFilteringBooleanOperation

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

Filter Boolean Operation

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

Constructors

LuceneFilteringBooleanOperation(LuceneSearchFilteringOperation)

Constructor

public LuceneFilteringBooleanOperation(LuceneSearchFilteringOperation luceneSearch)

Parameters

luceneSearch LuceneSearchFilteringOperation

Methods

And()

Sets the next operation to be AND

public override INestedFilter And()

Returns

INestedFilter

AndFilter()

Sets the next operation to be AND

public override IFilter AndFilter()

Returns

IFilter

ChainFilters(Action<IFilterChain>)

Chain filters

public override 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 override 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 override IBooleanFilterOperation FieldValueExistsFilter(string field)

Parameters

field string

Returns

IBooleanFilterOperation

FieldValueNotExistsFilter(string)

Document must not have value for field

public override 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 override 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 override 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 override 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 override INestedFilter Not()

Returns

INestedFilter

NotFilter()

Sets the next operation to be NOT

public override IFilter NotFilter()

Returns

IFilter

Or()

Sets the next operation to be OR

public override INestedFilter Or()

Returns

INestedFilter

OrFilter()

Sets the next operation to be OR

public override IFilter OrFilter()

Returns

IFilter

QueryFilter(Func<INestedQuery, INestedBooleanOperation>, BooleanOperation)

Must match query

public override 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 override 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 override IBooleanFilterOperation TermFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

IBooleanFilterOperation

TermPrefixFilter(FilterTerm)

Term must match as prefix

public override IBooleanFilterOperation TermPrefixFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

IBooleanFilterOperation

TermsFilter(IEnumerable<FilterTerm>)

Terms must match

public override IBooleanFilterOperation TermsFilter(IEnumerable<FilterTerm> terms)

Parameters

terms IEnumerable<FilterTerm>

Returns

IBooleanFilterOperation