org.pentaho.di.laf
Class LAFDelegate<E extends Handler>

java.lang.Object
  extended by org.pentaho.di.laf.LAFDelegate<E>
Type Parameters:
E -

public class LAFDelegate<E extends Handler>
extends Object

A factory delegate for a specific kind of LAFHandler

Author:
dhushon

Constructor Summary
LAFDelegate(Class<E> handler, Class<E> defaultHandler)
           
 
Method Summary
 void changeHandler(E handler)
           
 E getHandler()
           
 HashSet<LAFChangeListener<E>> getListeners()
           
 void loadListeners(HashSet<LAFChangeListener<E>> listeners)
           
 E newHandlerInstance(String classname)
          load a concrete Handler for a given Interface (by String classname) if the class is not instantiable, will fallback to default, and then fallback to an abstract implementation.
 E registerChangeListener(LAFChangeListener<E> listener)
           
 void unregisterChangeListener(LAFChangeListener<E> listener)
          unregister a @see LAFChangeListener from the Map which will prevent notification on @see Handler change
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LAFDelegate

public LAFDelegate(Class<E> handler,
                   Class<E> defaultHandler)
Method Detail

newHandlerInstance

public E newHandlerInstance(String classname)
                                     throws ClassNotFoundException
load a concrete Handler for a given Interface (by String classname) if the class is not instantiable, will fallback to default, and then fallback to an abstract implementation. Will always return non-null.

Parameters:
classname -
Returns:
Throws:
ClassNotFoundException

registerChangeListener

public E registerChangeListener(LAFChangeListener<E> listener)

unregisterChangeListener

public void unregisterChangeListener(LAFChangeListener<E> listener)
unregister a @see LAFChangeListener from the Map which will prevent notification on @see Handler change

Parameters:
listener -

getListeners

public HashSet<LAFChangeListener<E>> getListeners()

loadListeners

public void loadListeners(HashSet<LAFChangeListener<E>> listeners)

changeHandler

public void changeHandler(E handler)

getHandler

public E getHandler()