## org.biojava.utils
Class ChangeForwarder.Retyper

    java.lang.Object
      org.biojava.utils.ChangeForwarder
          org.biojava.utils.ChangeForwarder.Retyper

All Implemented Interfaces:
  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
Author:
  Matthew Pocock

Nested Class Summary

Nested classes/interfaces inherited from class org.biojava.utils.ChangeForwarder
`ChangeForwarder.Retyper`

Nested classes/interfaces inherited from interface org.biojava.utils.ChangeListener
`ChangeListener.AlwaysVetoListener, ChangeListener.ChangeEventRecorder, ChangeListener.LoggingListener`

Field Summary

Fields inherited from interface org.biojava.utils.ChangeListener
`ALWAYS_VETO, LOG_TO_OUT`

Constructor Summary
`ChangeForwarder.Retyper(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.biojava.utils.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(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