Table of Contents

Class LuceneSearchFilteringOperationBase

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

Filtering Operation

public abstract class LuceneSearchFilteringOperationBase : IFilter, INestedFilter
Inheritance
LuceneSearchFilteringOperationBase
Implements
Derived
Inherited Members

Constructors

LuceneSearchFilteringOperationBase(LuceneSearchQueryBase)

Constructor

public LuceneSearchFilteringOperationBase(LuceneSearchQueryBase luceneSearchQueryBase)

Parameters

luceneSearchQueryBase LuceneSearchQueryBase

Properties

BooleanFilterOperation

The type of boolean operation

public BooleanOperation BooleanFilterOperation { get; set; }

Property Value

BooleanOperation

Occurrence

Specifies how clauses are to occur in matching documents

protected Occur Occurrence { get; set; }

Property Value

Occur

Methods

ChainFilters(Action<IFilterChain>)

Chain filters

public abstract IBooleanFilterOperation ChainFilters(Action<IFilterChain> chain)

Parameters

chain Action<IFilterChain>

Returns

IBooleanFilterOperation

CreateBooleanOp()

protected abstract LuceneFilteringBooleanOperationBase CreateBooleanOp()

Returns

LuceneFilteringBooleanOperationBase

CreateChainOp()

Creates a new FilterChainOpBase

protected abstract FilterChainOpBase CreateChainOp()

Returns

FilterChainOpBase

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

LuceneFilter(Filter, BooleanOperation?)

Adds a true Lucene Filter

public LuceneFilteringBooleanOperationBase LuceneFilter(Filter filter, BooleanOperation? op = null)

Parameters

filter Filter
op BooleanOperation?

Returns

LuceneFilteringBooleanOperationBase

NestedChainFilters(Action<IFilterChain>)

protected abstract INestedBooleanFilterOperation NestedChainFilters(Action<IFilterChain> chain)

Parameters

chain Action<IFilterChain>

Returns

INestedBooleanFilterOperation

NestedFieldValueExistsFilter(string)

protected abstract INestedBooleanFilterOperation NestedFieldValueExistsFilter(string field)

Parameters

field string

Returns

INestedBooleanFilterOperation

NestedFieldValueNotExistsFilter(string)

protected abstract INestedBooleanFilterOperation NestedFieldValueNotExistsFilter(string field)

Parameters

field string

Returns

INestedBooleanFilterOperation

NestedQueryFilter(Func<INestedQuery, INestedBooleanOperation>, BooleanOperation)

protected abstract INestedBooleanFilterOperation NestedQueryFilter(Func<INestedQuery, INestedBooleanOperation> inner, BooleanOperation defaultOp)

Parameters

inner Func<INestedQuery, INestedBooleanOperation>
defaultOp BooleanOperation

Returns

INestedBooleanFilterOperation

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

protected abstract INestedBooleanFilterOperation NestedSpatialOperationFilter(string field, ExamineSpatialOperation spatialOperation, Func<IExamineSpatialShapeFactory, IExamineSpatialShape> shape)

Parameters

field string
spatialOperation ExamineSpatialOperation
shape Func<IExamineSpatialShapeFactory, IExamineSpatialShape>

Returns

INestedBooleanFilterOperation

NestedTermFilter(FilterTerm)

protected abstract INestedBooleanFilterOperation NestedTermFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

INestedBooleanFilterOperation

NestedTermPrefixFilter(FilterTerm)

protected abstract INestedBooleanFilterOperation NestedTermPrefixFilter(FilterTerm term)

Parameters

term FilterTerm

Returns

INestedBooleanFilterOperation

NestedTermsFilter(IEnumerable<FilterTerm>)

protected abstract INestedBooleanFilterOperation NestedTermsFilter(IEnumerable<FilterTerm> terms)

Parameters

terms IEnumerable<FilterTerm>

Returns

INestedBooleanFilterOperation

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