|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface EventList<E>
An observable List. ListEventListeners can register to be
notified when this list changes.
EventLists may be writable or read-only. Consult the Javadoc for
your EventList if you are unsure.
Warning: EventLists
are thread ready but not thread safe. If you are sharing an EventList
between multiple threads, you can add thread safety by using the built-in
locks:
EventList myList = ...
myList.getReadWriteLock().writeLock().lock();
try {
// access myList here
if(myList.size() > 3) {
System.out.println(myList.get(3));
myList.remove(3);
}
} finally {
myList.getReadWriteLock().writeLock().unlock();
}
Note that you are also required to acquire and hold the lock during the
construction of an EventList if concurrent modifications are possible in
your environment, like so:
EventList source = ...
SortedList sorted;
source.getReadWriteLock().readLock().lock();
try {
sorted = new SortedList(source);
} finally {
source.getReadWriteLock().readLock().unlock();
}
Warning: EventLists
may break the contract required by List. For example, when
you add() on a SortedList, it will ignore the specified
index so that the element will be inserted in sorted order.
GlazedLists.eventListOf(Object[]),
GlazedLists.eventList(Collection),
GlazedLists.readOnlyList(EventList),
GlazedLists.threadSafeList(EventList),
GlazedLists.weakReferenceProxy(EventList, ListEventListener)| Method Summary | |
|---|---|
void |
addListEventListener(ListEventListener<? super E> listChangeListener)
Registers the specified listener to receive change updates for this list. |
void |
dispose()
Disposing an EventList will make it eligible for garbage collection. |
ListEventPublisher |
getPublisher()
Get the publisher used to distribute ListEvents. |
ReadWriteLock |
getReadWriteLock()
Gets the lock required to share this list between multiple threads. |
void |
removeListEventListener(ListEventListener<? super E> listChangeListener)
Removes the specified listener from receiving change updates for this list. |
| Methods inherited from interface java.util.List |
|---|
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray |
| Method Detail |
|---|
void addListEventListener(ListEventListener<? super E> listChangeListener)
void removeListEventListener(ListEventListener<? super E> listChangeListener)
ReadWriteLock getReadWriteLock()
ReadWriteLock that guarantees thread safe
access to this list.ListEventPublisher getPublisher()
ListEvents.
void dispose()
Warning: It is an error
to call any method on an EventList after it has been disposed.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||