Class BoundedSet<E>

java.lang.Object
com.google.common.collect.ForwardingObject
com.google.common.collect.ForwardingCollection<E>
com.google.common.collect.ForwardingSet<E>
com.atlassian.bamboo.concurrent.BoundedSet<E>
All Implemented Interfaces:
Iterable<E>, Collection<E>, Set<E>

public class BoundedSet<E> extends com.google.common.collect.ForwardingSet<E>
A bounded set. Set additions are blocked if set capacity is exceeded.
  • Constructor Summary

    Constructors
    Constructor
    Description
    BoundedSet(int maximumSize)
    Creates a HashSet-backed bounded set.
    BoundedSet(Set<E> delegate, int maximumSize)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    add(E e)
     
    boolean
    addAll(@NotNull Collection<? extends E> c)
     
    void
     
    protected Set<E>
     
    @NotNull Iterator<E>
    The returned iterator does not support removal.
    boolean
    offer(E e)
    Inserts the specified element into this queue if it is possible to do so immediately without violating capacity restrictions.
    See Queue.poll() Retrieves and removes the head of this queue, or returns null if this queue is empty.
    boolean
     
    boolean
    removeAll(@NotNull Collection<?> c)
     
    boolean
    retainAll(@NotNull Collection<?> c)
     

    Methods inherited from class com.google.common.collect.ForwardingSet

    equals, hashCode, standardEquals, standardHashCode, standardRemoveAll

    Methods inherited from class com.google.common.collect.ForwardingCollection

    contains, containsAll, isEmpty, size, standardAddAll, standardClear, standardContains, standardContainsAll, standardIsEmpty, standardRemove, standardRetainAll, standardToArray, standardToArray, standardToString, toArray, toArray

    Methods inherited from class com.google.common.collect.ForwardingObject

    toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.util.Collection

    parallelStream, removeIf, stream, toArray

    Methods inherited from interface java.lang.Iterable

    forEach

    Methods inherited from interface java.util.Set

    contains, containsAll, isEmpty, size, spliterator, toArray, toArray
  • Constructor Details

    • BoundedSet

      public BoundedSet(Set<E> delegate, int maximumSize)
    • BoundedSet

      public BoundedSet(int maximumSize)
      Creates a HashSet-backed bounded set.
  • Method Details

    • delegate

      protected Set<E> delegate()
      Specified by:
      delegate in class com.google.common.collect.ForwardingSet<E>
    • iterator

      @NotNull public @NotNull Iterator<E> iterator()
      The returned iterator does not support removal.
      Specified by:
      iterator in interface Collection<E>
      Specified by:
      iterator in interface Iterable<E>
      Specified by:
      iterator in interface Set<E>
      Overrides:
      iterator in class com.google.common.collect.ForwardingCollection<E>
    • add

      public boolean add(E e)
      Specified by:
      add in interface Collection<E>
      Specified by:
      add in interface Set<E>
      Overrides:
      add in class com.google.common.collect.ForwardingCollection<E>
    • remove

      public boolean remove(Object o)
      Specified by:
      remove in interface Collection<E>
      Specified by:
      remove in interface Set<E>
      Overrides:
      remove in class com.google.common.collect.ForwardingCollection<E>
    • addAll

      public boolean addAll(@NotNull @NotNull Collection<? extends E> c)
      Specified by:
      addAll in interface Collection<E>
      Specified by:
      addAll in interface Set<E>
      Overrides:
      addAll in class com.google.common.collect.ForwardingCollection<E>
    • retainAll

      public boolean retainAll(@NotNull @NotNull Collection<?> c)
      Specified by:
      retainAll in interface Collection<E>
      Specified by:
      retainAll in interface Set<E>
      Overrides:
      retainAll in class com.google.common.collect.ForwardingCollection<E>
    • removeAll

      public boolean removeAll(@NotNull @NotNull Collection<?> c)
      Specified by:
      removeAll in interface Collection<E>
      Specified by:
      removeAll in interface Set<E>
      Overrides:
      removeAll in class com.google.common.collect.ForwardingCollection<E>
    • clear

      public void clear()
      Specified by:
      clear in interface Collection<E>
      Specified by:
      clear in interface Set<E>
      Overrides:
      clear in class com.google.common.collect.ForwardingCollection<E>
    • poll

      @Nullable public E poll()
      See Queue.poll() Retrieves and removes the head of this queue, or returns null if this queue is empty. WARNING: unlike Queue's poll() there is no guarantee that the items will be polled in the same order as added.
    • offer

      public boolean offer(E e)
      Inserts the specified element into this queue if it is possible to do so immediately without violating capacity restrictions.
      Returns:
      true if the contains(e) will return true after this operation.