Package org.eclipse.spi.net4j

# Class Channel.SendQueue

java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
java.util.concurrent.ConcurrentLinkedQueue<IBuffer>
org.eclipse.spi.net4j.Channel.SendQueue

All Implemented Interfaces:
  `Serializable`, `Iterable<IBuffer>`, `Collection<IBuffer>`, `Queue<IBuffer>`

Enclosing class:
  Channel

protected class Channel.SendQueue extends ConcurrentLinkedQueue<IBuffer>
A queue that holds buffers that shall be sent. This implementation notifies observers of enqueued and dequeued buffers. The notification is deliberately not synchronized. It shall only be used by O&M tooling to offer (not 100% accurate) statistical insights

Since:
  3.0
Author:
  Eike Stepper
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`SendQueue()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`offer(IBuffer o)`
`IBuffer`
`poll()`
`boolean`
`remove(Object o)`

### Methods inherited from class java.util.concurrent.ConcurrentLinkedQueue

`add, addAll, clear, contains, forEach, isEmpty, iterator, peek, removeAll, removeIf, retainAll, size, spliterator, toArray, toArray, toString`

### Methods inherited from class java.util.AbstractQueue

`element, remove`

### Methods inherited from class java.util.AbstractCollection

`containsAll`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Collection

`containsAll, equals, hashCode, parallelStream, stream, toArray`

### Methods inherited from interface java.util.Queue

`element, remove`

## Constructor Details

### SendQueue

protected SendQueue()

## Method Details

### offer

public boolean offer(IBuffer o)

Specified by:
  `offer` in interface `Queue<IBuffer>`
Overrides:
  `offer` in class `ConcurrentLinkedQueue<IBuffer>`

### poll

public IBuffer poll()

Specified by:
  `poll` in interface `Queue<IBuffer>`
Overrides:
  `poll` in class `ConcurrentLinkedQueue<IBuffer>`

### remove

public boolean remove(Object o)

Specified by:
  `remove` in interface `Collection<IBuffer>`
Overrides:
  `remove` in class `ConcurrentLinkedQueue<IBuffer>`