Class GrepIterator
java.lang.Object
org.apache.accumulo.core.iterators.WrappingIterator
org.apache.accumulo.core.iterators.Filter
org.apache.accumulo.core.iterators.user.GrepIterator
- All Implemented Interfaces:
OptionDescriber
,SortedKeyValueIterator<Key,
,Value> YieldingKeyValueIterator<Key,
Value>
This iterator provides exact string matching. It searches both the Key and Value for the string.
The string to match is specified by the "term" option.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.accumulo.core.iterators.OptionDescriber
OptionDescriber.IteratorOptions
-
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
Creates a deep copy of this iterator as though seek had not yet been called.protected int
indexOf
(byte[] value, int offset, int length) void
init
(SortedKeyValueIterator<Key, Value> source, Map<String, String> options, IteratorEnvironment env) Initializes the iterator.protected boolean
match
(byte[] ba) protected boolean
match
(ByteSequence bs) static void
setTerm
(IteratorSetting cfg, String term) Encode the grep term as an option for a ScanIteratorMethods inherited from class org.apache.accumulo.core.iterators.Filter
describeOptions, findTop, next, seek, setNegate, validateOptions
Methods inherited from class org.apache.accumulo.core.iterators.WrappingIterator
getSource, getTopKey, getTopValue, hasTop, setSource
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.accumulo.core.iterators.YieldingKeyValueIterator
enableYielding
-
Constructor Details
-
GrepIterator
public GrepIterator()
-
-
Method Details
-
accept
-
match
-
match
protected boolean match(byte[] ba) -
indexOf
protected int indexOf(byte[] value, int offset, int length) -
deepCopy
Description copied from interface:SortedKeyValueIterator
Creates a deep copy of this iterator as though seek had not yet been called. init should be called on an iterator before deepCopy is called. init should not need to be called on the copy that is returned by deepCopy; that is, when necessary init should be called in the deepCopy method on the iterator it returns. The behavior is unspecified if init is called after deepCopy either on the original or the copy. A proper implementation would call deepCopy on the source.- Specified by:
deepCopy
in interfaceSortedKeyValueIterator<Key,
Value> - Overrides:
deepCopy
in classFilter
- Parameters:
env
-IteratorEnvironment
environment in which iterator is being run, provided by Accumulo itself and is expected to be non-null.- Returns:
SortedKeyValueIterator
a copy of this iterator (with the same source and settings).
-
init
public void init(SortedKeyValueIterator<Key, Value> source, Map<String, throws IOExceptionString> options, IteratorEnvironment env) Description copied from interface:SortedKeyValueIterator
Initializes the iterator. Data should not be read from the source in this method.- Specified by:
init
in interfaceSortedKeyValueIterator<Key,
Value> - Overrides:
init
in classFilter
- Parameters:
source
-SortedKeyValueIterator
source to read data from.options
-Map
map of string option names to option values.env
-IteratorEnvironment
environment in which iterator is being run, provided by Accumulo itself and is expected to be non-null.- Throws:
IOException
- unused.
-
setTerm
Encode the grep term as an option for a ScanIterator
-