public class RangedFilter extends Object
implements NodeFilter

Filters nodes by range and uses an IndexFilter to track any changes after filtering the node

Public Constructor Summary

Public Method Summary

boolean
filtersNodes()
Returns true if children might be filtered due to query criteria
NamedNode
Index
getIndex()
Returns the index that this filter uses
NodeFilter
getIndexedFilter()
Returns the index filter that this filter uses to get a NodeFilter that doesn't filter any children.
NamedNode
boolean
IndexedNode
updateChild(IndexedNode snap, ChildKey key, Node newChild, Path affectedPath, NodeFilter.CompleteChildSource source, ChildChangeAccumulator optChangeAccumulator)
Update a single complete child in the snap.
IndexedNode
updateFullNode(IndexedNode oldSnap, IndexedNode newSnap, ChildChangeAccumulator optChangeAccumulator)
Update a node in full and output any resulting change from this complete update.
IndexedNode
updatePriority(IndexedNode oldSnap, Node newPriority)
Update the priority of the root node

Inherited Method Summary

Public Constructors

public RangedFilter (QueryParams params)

Parameters
params

Public Methods

public boolean filtersNodes ()

Returns true if children might be filtered due to query criteria

public NamedNode getEndPost ()

public Index getIndex ()

Returns the index that this filter uses

public NodeFilter getIndexedFilter ()

Returns the index filter that this filter uses to get a NodeFilter that doesn't filter any children.

public NamedNode getStartPost ()

public boolean matches (NamedNode node)

Parameters
node

public IndexedNode updateChild (IndexedNode snap, ChildKey key, Node newChild, Path affectedPath, NodeFilter.CompleteChildSource source, ChildChangeAccumulator optChangeAccumulator)

Update a single complete child in the snap. If the child equals the old child in the snap, this is a no-op. The method expects an indexed snap.

Parameters
snap
key
newChild
affectedPath
source
optChangeAccumulator

public IndexedNode updateFullNode (IndexedNode oldSnap, IndexedNode newSnap, ChildChangeAccumulator optChangeAccumulator)

Update a node in full and output any resulting change from this complete update.

Parameters
oldSnap
newSnap
optChangeAccumulator

public IndexedNode updatePriority (IndexedNode oldSnap, Node newPriority)

Update the priority of the root node

Parameters
oldSnap
newPriority