hmi.util
Class CircularBuffer<E>

java.lang.Object
  extended by hmi.util.CircularBuffer<E>
All Implemented Interfaces:
Iterable<E>, Collection<E>, List<E>

public class CircularBuffer<E>
extends Object
implements List<E>

Creates a Fifo List of fixed size. When new elements are added to a full list, the first elements are removed.

Author:
welberge

Field Summary
private  ArrayList<E> buffer
           
private  int size
           
 
Constructor Summary
CircularBuffer(int size)
           
 
Method Summary
 boolean add(E element)
           
 void add(int index, E element)
           
 boolean addAll(Collection<? extends E> elements)
           
 boolean addAll(int index, Collection<? extends E> elements)
           
 void clear()
           
 boolean contains(Object element)
           
 boolean containsAll(Collection<?> elements)
           
private  void fixSize()
           
 E get(int index)
           
 int indexOf(Object element)
           
 boolean isEmpty()
           
 Iterator<E> iterator()
           
 int lastIndexOf(Object element)
           
 ListIterator<E> listIterator()
           
 ListIterator<E> listIterator(int index)
           
 E remove(int element)
           
 boolean remove(Object element)
           
 boolean removeAll(Collection<?> elements)
           
 boolean retainAll(Collection<?> elements)
           
 E set(int index, E element)
           
 int size()
           
 List<E> subList(int index1, int index2)
           
 Object[] toArray()
           
<T> T[]
toArray(T[] element)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.List
equals, hashCode
 

Field Detail

buffer

private final ArrayList<E> buffer

size

private final int size
Constructor Detail

CircularBuffer

public CircularBuffer(int size)
Method Detail

get

public E get(int index)
Specified by:
get in interface List<E>

size

public int size()
Specified by:
size in interface Collection<E>
Specified by:
size in interface List<E>

iterator

public Iterator<E> iterator()
Specified by:
iterator in interface Iterable<E>
Specified by:
iterator in interface Collection<E>
Specified by:
iterator in interface List<E>

fixSize

private void fixSize()

add

public boolean add(E element)
Specified by:
add in interface Collection<E>
Specified by:
add in interface List<E>

add

public void add(int index,
                E element)
Specified by:
add in interface List<E>

addAll

public boolean addAll(Collection<? extends E> elements)
Specified by:
addAll in interface Collection<E>
Specified by:
addAll in interface List<E>

addAll

public boolean addAll(int index,
                      Collection<? extends E> elements)
Specified by:
addAll in interface List<E>

clear

public void clear()
Specified by:
clear in interface Collection<E>
Specified by:
clear in interface List<E>

contains

public boolean contains(Object element)
Specified by:
contains in interface Collection<E>
Specified by:
contains in interface List<E>

containsAll

public boolean containsAll(Collection<?> elements)
Specified by:
containsAll in interface Collection<E>
Specified by:
containsAll in interface List<E>

indexOf

public int indexOf(Object element)
Specified by:
indexOf in interface List<E>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Collection<E>
Specified by:
isEmpty in interface List<E>

lastIndexOf

public int lastIndexOf(Object element)
Specified by:
lastIndexOf in interface List<E>

listIterator

public ListIterator<E> listIterator()
Specified by:
listIterator in interface List<E>

listIterator

public ListIterator<E> listIterator(int index)
Specified by:
listIterator in interface List<E>

remove

public boolean remove(Object element)
Specified by:
remove in interface Collection<E>
Specified by:
remove in interface List<E>

remove

public E remove(int element)
Specified by:
remove in interface List<E>

removeAll

public boolean removeAll(Collection<?> elements)
Specified by:
removeAll in interface Collection<E>
Specified by:
removeAll in interface List<E>

retainAll

public boolean retainAll(Collection<?> elements)
Specified by:
retainAll in interface Collection<E>
Specified by:
retainAll in interface List<E>

set

public E set(int index,
             E element)
Specified by:
set in interface List<E>

subList

public List<E> subList(int index1,
                       int index2)
Specified by:
subList in interface List<E>

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection<E>
Specified by:
toArray in interface List<E>

toArray

public <T> T[] toArray(T[] element)
Specified by:
toArray in interface Collection<E>
Specified by:
toArray in interface List<E>