Package org.apache.zookeeper.server.util
Class CircularBuffer<T>
- java.lang.Object
- 
- org.apache.zookeeper.server.util.CircularBuffer<T>
 
- 
 public class CircularBuffer<T> extends Object Thread safe FIFO CircularBuffer implementation. When the buffer is full write operation overwrites the oldest element. Fun thing @todo, make this lock free as this is called on every quorum message
- 
- 
Constructor SummaryConstructors Constructor Description CircularBuffer(Class<T> clazz, int capacity)
 
- 
- 
- 
Method Detail- 
writepublic void write(T element) Puts elements in the next available index in the array. If the array is full the oldest element is replaced with the new value.- Parameters:
- element-
 
 - 
takepublic T take() Reads from the buffer in a FIFO manner. Returns the oldest element in the buffer if the buffer is not empty Returns null if the buffer is empty- Returns:
- the oldest element in the buffer
 
 - 
peekpublic T peek() 
 - 
sizepublic int size() 
 - 
isEmptypublic boolean isEmpty() 
 - 
isFullpublic boolean isFull() 
 - 
resetpublic void reset() 
 
- 
 
-