org.dishevelled.observable.event
Class ObservableQueueChangeSupport<E>

java.lang.Object
  extended by org.dishevelled.observable.event.ObservableQueueChangeSupport<E>
Type Parameters:
E - queue element type
All Implemented Interfaces:
Serializable

public class ObservableQueueChangeSupport<E>
extends Object
implements Serializable

A support class that can be used via delegation to provide QueueChangeListener and VetoableQueueChangeListener management.

Version:
$Revision$ $Date$
Author:
Michael Heuer
See Also:
Serialized Form

Constructor Summary
protected ObservableQueueChangeSupport()
          Create a new support class meant to be subclassed.
  ObservableQueueChangeSupport(ObservableQueue<E> source)
          Create a new support class that fires queue change and vetoable queue change events with the specified source as the source of the events.
 
Method Summary
 void addQueueChangeListener(QueueChangeListener<E> l)
          Add the specified queue change listener.
 void addVetoableQueueChangeListener(VetoableQueueChangeListener<E> l)
          Add the specified vetoable queue change listener.
 void fireQueueChanged()
          Fire a change event to all registered QueueChangeListeners.
 void fireQueueChanged(QueueChangeEvent<E> e)
          Fire the specified change event to all registered QueueChangeListeners.
 void fireQueueWillChange()
          Fire a will change event to all registered VetoableQueueChangeListeners.
 void fireQueueWillChange(VetoableQueueChangeEvent<E> e)
          Fire the specified will change event to all registered VetoableQueueChangeListeners.
protected  EventListenerList getEventListenerList()
          Return the EventListenerList backing this observable queue support class.
 int getQueueChangeListenerCount()
          Return the number of QueueChangeListeners registered to this observable queue support class.
 QueueChangeListener<E>[] getQueueChangeListeners()
          Return an array of all QueueChangeListeners, or an empty array if none are registered.
 int getVetoableQueueChangeListenerCount()
          Return the number of VetoableQueueChangeListeners registered to this observable queue support class.
 VetoableQueueChangeListener<E>[] getVetoableQueueChangeListeners()
          Return an array of all VetoableQueueChangeListeners, or an empty array if none are registered.
 void removeQueueChangeListener(QueueChangeListener<E> l)
          Remove the specified queue change listener.
 void removeVetoableQueueChangeListener(VetoableQueueChangeListener<E> l)
          Remove the specified vetoable queue change listener.
protected  void setSource(ObservableQueue<E> source)
          Set the source of queue change and vetoable queue change events to source.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ObservableQueueChangeSupport

protected ObservableQueueChangeSupport()
Create a new support class meant to be subclassed.


ObservableQueueChangeSupport

public ObservableQueueChangeSupport(ObservableQueue<E> source)
Create a new support class that fires queue change and vetoable queue change events with the specified source as the source of the events.

Parameters:
source - the event source
Method Detail

setSource

protected void setSource(ObservableQueue<E> source)
Set the source of queue change and vetoable queue change events to source. Subclasses should call this method before any of the fireX methods.

Parameters:
source - the event source

getEventListenerList

protected final EventListenerList getEventListenerList()
Return the EventListenerList backing this observable queue support class.

Returns:
the EventListenerList backing this observable queue support class.

addQueueChangeListener

public final void addQueueChangeListener(QueueChangeListener<E> l)
Add the specified queue change listener.

Parameters:
l - queue change listener to add

removeQueueChangeListener

public final void removeQueueChangeListener(QueueChangeListener<E> l)
Remove the specified queue change listener.

Parameters:
l - queue change listener to remove

addVetoableQueueChangeListener

public final void addVetoableQueueChangeListener(VetoableQueueChangeListener<E> l)
Add the specified vetoable queue change listener.

Parameters:
l - vetoable queue change listener to add

removeVetoableQueueChangeListener

public final void removeVetoableQueueChangeListener(VetoableQueueChangeListener<E> l)
Remove the specified vetoable queue change listener.

Parameters:
l - vetoable queue change listener to remove

getQueueChangeListeners

public final QueueChangeListener<E>[] getQueueChangeListeners()
Return an array of all QueueChangeListeners, or an empty array if none are registered.

Returns:
an array of all QueueChangeListeners, or an empty array if none are registered

getQueueChangeListenerCount

public final int getQueueChangeListenerCount()
Return the number of QueueChangeListeners registered to this observable queue support class.

Returns:
the number of QueueChangeListeners registered to this observable queue support class

getVetoableQueueChangeListeners

public final VetoableQueueChangeListener<E>[] getVetoableQueueChangeListeners()
Return an array of all VetoableQueueChangeListeners, or an empty array if none are registered.

Returns:
an array of all VetoableQueueChangeListeners, or an empty array if none are registered

getVetoableQueueChangeListenerCount

public final int getVetoableQueueChangeListenerCount()
Return the number of VetoableQueueChangeListeners registered to this observable queue support class.

Returns:
the number of VetoableQueueChangeListeners registered to this observable queue support class

fireQueueWillChange

public void fireQueueWillChange()
                         throws QueueChangeVetoException
Fire a will change event to all registered VetoableQueueChangeListeners.

Throws:
QueueChangeVetoException - if any of the listeners veto the change

fireQueueWillChange

public void fireQueueWillChange(VetoableQueueChangeEvent<E> e)
                         throws QueueChangeVetoException
Fire the specified will change event to all registered VetoableQueueChangeListeners.

Parameters:
e - will change event
Throws:
QueueChangeVetoException - if any of the listeners veto the change

fireQueueChanged

public void fireQueueChanged()
Fire a change event to all registered QueueChangeListeners.


fireQueueChanged

public void fireQueueChanged(QueueChangeEvent<E> e)
Fire the specified change event to all registered QueueChangeListeners.

Parameters:
e - change event


Copyright (c) 2003-2012 held jointly by the individual authors. Licensed under the GNU Lesser General Public License (LGPL).