package com.aikinparker.events;

public abstract class DataEventListener<T> implements Event.Listener{

	public void eventReceived(Event event) {
		coerceEventReceived((DataEvent<?>) event);
	}
	
	/**
	 * @param event 
	 * This method is called on any subclass upon receiving an Event instance, delegating responsibility of
	 * of any further coercion necessary.
	 */
	protected abstract <S> void coerceEventReceived(DataEvent<S> event);

}

@@ -139,16 +139,59 @@
 vent) %7B%0A
+%09%09//TODO Do some type checking validation.%0A
 %09%09coerce

Update DataEventListener.java