Package org.apache.accumulo.core.client
Class IteratorSetting
java.lang.Object
org.apache.accumulo.core.client.IteratorSetting
- All Implemented Interfaces:
- org.apache.hadoop.io.Writable
Configure an iterator for minc, majc, and/or scan. By default, IteratorSetting will be configured
 for scan.
 Every iterator has a priority, a name, a class, a set of scopes, and configuration parameters.
 A typical use case configured for scan:
 
IteratorSetting cfg = new IteratorSetting(priority, "myIter", MyIterator.class); MyIterator.addOption(cfg, 42); scanner.addScanIterator(cfg);
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic classA convenience class for passing column family and column qualifiers to iterator configuration methods.
- 
Constructor SummaryConstructorsConstructorDescriptionIteratorSetting(int priority, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass) Constructs an iterator setting using the given class's SimpleName for the iterator name.IteratorSetting(int priority, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass, Map<String, String> properties) Constructs an iterator setting using the given class's SimpleName for the iterator name and configured for the specified scopes with the specified parameters.IteratorSetting(int priority, String name, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass) Constructs an iterator setting configured for the scan scope with no parameters.IteratorSetting(int priority, String name, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass, Map<String, String> properties) Constructs an iterator setting using the provided name and the provided class's name for the scan scope with the provided parameters.IteratorSetting(int priority, String name, String iteratorClass) Constructs an iterator setting configured for the scan scope with no parameters.Constructs an iterator setting configured for the specified scopes with the specified parameters.IteratorSetting(DataInput din) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdd another option to the iterator.voidaddOptions(Map<String, String> properties) Add many options to the iterator.voidaddOptions(Set<Map.Entry<String, String>> propertyEntries) Add many options to the iterator.voidRemove all options from the iterator.booleanGet the name of the class that implements the iterator.getName()Get the iterator's name.Get the configuration parameters for this iterator.intGet layer at which this iterator applies.inthashCode()voidreadFields(DataInput din) removeOption(String option) Remove an option from the iterator.voidsetIteratorClass(String iteratorClass) Set the name of the class that implements the iterator.voidSet the iterator's name.voidsetPriority(int priority) Set layer at which this iterator applies.toString()voidwrite(DataOutput dout) 
- 
Constructor Details- 
IteratorSettingConstructs an iterator setting configured for the scan scope with no parameters. (Parameters can be added later.)- Parameters:
- priority- the priority for the iterator (see- setPriority(int))
- name- the distinguishing name for the iterator
- iteratorClass- the fully qualified class name for the iterator
 
- 
IteratorSettingpublic IteratorSetting(int priority, String name, String iteratorClass, Map<String, String> properties) Constructs an iterator setting configured for the specified scopes with the specified parameters.- Parameters:
- priority- the priority for the iterator (see- setPriority(int))
- name- the distinguishing name for the iterator
- iteratorClass- the fully qualified class name for the iterator
- properties- any properties for the iterator
 
- 
IteratorSettingpublic IteratorSetting(int priority, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass) Constructs an iterator setting using the given class's SimpleName for the iterator name. The iterator setting will be configured for the scan scope with no parameters.- Parameters:
- priority- the priority for the iterator (see- setPriority(int))
- iteratorClass- the class for the iterator
 
- 
IteratorSettingpublic IteratorSetting(int priority, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass, Map<String, String> properties) Constructs an iterator setting using the given class's SimpleName for the iterator name and configured for the specified scopes with the specified parameters.- Parameters:
- priority- the priority for the iterator (see- setPriority(int))
- iteratorClass- the class for the iterator
- properties- any properties for the iterator
 
- 
IteratorSettingpublic IteratorSetting(int priority, String name, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass) Constructs an iterator setting configured for the scan scope with no parameters.- Parameters:
- priority- the priority for the iterator (see- setPriority(int))
- name- the distinguishing name for the iterator
- iteratorClass- the class for the iterator
 
- 
IteratorSettingpublic IteratorSetting(int priority, String name, Class<? extends SortedKeyValueIterator<Key, Value>> iteratorClass, Map<String, String> properties) Constructs an iterator setting using the provided name and the provided class's name for the scan scope with the provided parameters.- Parameters:
- priority- The priority for the iterator (see- setPriority(int))
- name- The distinguishing name for the iterator
- iteratorClass- The class for the iterator
- properties- Any properties for the iterator
- Since:
- 1.6.0
 
- 
IteratorSetting- Throws:
- IOException
- Since:
- 1.5.0
 
 
- 
- 
Method Details- 
getPrioritypublic int getPriority()Get layer at which this iterator applies. SeesetPriority(int)for how the priority is used.- Returns:
- the priority of this Iterator
 
- 
setPrioritypublic void setPriority(int priority) Set layer at which this iterator applies.- Parameters:
- priority- determines the order in which iterators are applied (system iterators are always applied first, then user-configured iterators, lowest priority first)
 
- 
getNameGet the iterator's name.- Returns:
- the name of the iterator
 
- 
setNameSet the iterator's name. Must be a simple alphanumeric identifier. The iterator name also may not contain a dot/period.
- 
getIteratorClassGet the name of the class that implements the iterator.- Returns:
- the iterator's class name
 
- 
setIteratorClassSet the name of the class that implements the iterator. The class does not have to be present on the client, but it must be available to all tablet servers.
- 
addOptionAdd another option to the iterator.- Parameters:
- option- the name of the option
- value- the value of the option
 
- 
removeOptionRemove an option from the iterator.- Parameters:
- option- the name of the option
- Returns:
- the value previously associated with the option, or null if no such option existed
 
- 
addOptionsAdd many options to the iterator.- Parameters:
- propertyEntries- a set of entries to add to the options
 
- 
addOptionsAdd many options to the iterator.- Parameters:
- properties- a map of entries to add to the options
 
- 
getOptionsGet the configuration parameters for this iterator.- Returns:
- the properties
 
- 
clearOptionspublic void clearOptions()Remove all options from the iterator.
- 
hashCodepublic int hashCode()
- 
equals
- 
toString
- 
readFields- Specified by:
- readFieldsin interface- org.apache.hadoop.io.Writable
- Throws:
- IOException
- Since:
- 1.5.0
- See Also:
- 
- Writable
 
 
- 
write- Specified by:
- writein interface- org.apache.hadoop.io.Writable
- Throws:
- IOException
- Since:
- 1.5.0
- See Also:
- 
- Writable
 
 
 
-