org.elasticsearch.util.collect
Class ForwardingSet<E>

java.lang.Object
  extended by org.elasticsearch.util.collect.ForwardingObject
      extended by org.elasticsearch.util.collect.ForwardingCollection<E>
          extended by org.elasticsearch.util.collect.ForwardingSet<E>
All Implemented Interfaces:
java.lang.Iterable<E>, java.util.Collection<E>, java.util.Set<E>
Direct Known Subclasses:
ForwardingSortedSet

public abstract class ForwardingSet<E>
extends ForwardingCollection<E>
implements java.util.Set<E>

A set which forwards all its method calls to another set. Subclasses should override one or more methods to modify the behavior of the backing set as desired per the decorator pattern.

See Also:
ForwardingObject

Constructor Summary
ForwardingSet()
           
 
Method Summary
protected abstract  java.util.Set<E> delegate()
          Returns the backing delegate instance that methods are forwarded to.
 boolean equals(java.lang.Object object)
           
 int hashCode()
           
 
Methods inherited from class org.elasticsearch.util.collect.ForwardingCollection
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 
Methods inherited from class org.elasticsearch.util.collect.ForwardingObject
toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

Constructor Detail

ForwardingSet

public ForwardingSet()
Method Detail

delegate

protected abstract java.util.Set<E> delegate()
Description copied from class: ForwardingObject
Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such as delegate(). Concrete subclasses override this method to supply the instance being decorated.

Specified by:
delegate in class ForwardingCollection<E>

equals

public boolean equals(@Nullable
                      java.lang.Object object)
Specified by:
equals in interface java.util.Collection<E>
Specified by:
equals in interface java.util.Set<E>
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Specified by:
hashCode in interface java.util.Collection<E>
Specified by:
hashCode in interface java.util.Set<E>
Overrides:
hashCode in class java.lang.Object