org.jscience.util
Class ChangeForwarder.Retyper

java.lang.Object
  extended by org.jscience.util.ChangeForwarder
      extended by org.jscience.util.ChangeForwarder.Retyper
All Implemented Interfaces:
java.util.EventListener, ChangeListener
Enclosing class:
ChangeForwarder

public static class ChangeForwarder.Retyper
extends ChangeForwarder

A ChangeForwarder that systematically uses a given type and wraps the old event.

Since:
1.4

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jscience.util.ChangeForwarder
ChangeForwarder.Retyper
 
Nested classes/interfaces inherited from interface org.jscience.util.ChangeListener
ChangeListener.AlwaysVetoListener, ChangeListener.LoggingListener
 
Field Summary
 
Fields inherited from interface org.jscience.util.ChangeListener
ALWAYS_VETO, LOG_TO_OUT
 
Constructor Summary
ChangeForwarder.Retyper(java.lang.Object source, ChangeSupport changeSupport, ChangeType type)
          Create a new Retyper for forwarding events.
 
Method Summary
protected  ChangeEvent generateEvent(ChangeEvent ce)
          

Return the new event to represent the originating event ce.

 ChangeType getType()
           
 
Methods inherited from class org.jscience.util.ChangeForwarder
changeSupport, getSource, postChange, preChange
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ChangeForwarder.Retyper

public ChangeForwarder.Retyper(java.lang.Object source,
                               ChangeSupport changeSupport,
                               ChangeType type)
Create a new Retyper for forwarding events.

Parameters:
source - the new source Object
changeSupport - the ChangeSupport managing the listeners
type - the new ChangeType
Method Detail

getType

public ChangeType getType()

generateEvent

protected ChangeEvent generateEvent(ChangeEvent ce)
                             throws ChangeVetoException
Description copied from class: ChangeForwarder

Return the new event to represent the originating event ce.

The returned ChangeEvent is the event that will be fired, and should be built from information in the original event. If it is null, then no event will be fired.

The default implementation just constructs a ChangeEvent of the same type that chains back to ce.

Overrides:
generateEvent in class ChangeForwarder
Parameters:
ce - the originating ChangeEvent
Returns:
a new ChangeEvent to pass on, or null if no event should be sent
Throws:
ChangeVetoException - if for any reason this event can't be handled