Class SetQueue<T>

java.lang.Object
com.rabbitmq.client.impl.SetQueue<T>
Type Parameters:
T - type of elements in the queue

public class SetQueue<T> extends Object

A generic queue-like implementation (supporting operations addIfNotPresent, poll, contains, and isEmpty) which restricts a queue element to appear at most once. If the element is already present addIfNotPresent(T) returns false.

Elements must not be null.

Concurrent Semantics

This implementation is not thread-safe.
  • Constructor Details

    • SetQueue

      public SetQueue()
  • Method Details

    • addIfNotPresent

      public boolean addIfNotPresent(T item)
      Add an element to the back of the queue and return true, or else return false.
      Parameters:
      item - to add
      Returns:
      true if the element was added, false if it is already present.
    • poll

      public T poll()
      Remove the head of the queue and return it.
      Returns:
      head element of the queue, or null if the queue is empty.
    • contains

      public boolean contains(T item)
      Parameters:
      item - to look for in queue
      Returns:
      true if and only if item is in the queue.
    • isEmpty

      public boolean isEmpty()
      Returns:
      true if and only if the queue is empty.
    • remove

      public boolean remove(T item)
      Remove item from queue, if present.
      Parameters:
      item - to remove
      Returns:
      true if and only if item was initially present and was removed.
    • clear

      public void clear()
      Remove all items from the queue.