package vroom.optimization.online.jmsa.events; import vroom.common.utilities.events.IEventHandler; import vroom.optimization.online.jmsa.IInstance; import vroom.optimization.online.jmsa.IScenario; import vroom.optimization.online.jmsa.MSABase.MSAProxy; /** * @author Victor Pillac, <a href="http://uniandes.edu.co">Universidad de Los Andes</a> - <a * href="http://copa.uniandes.edu.co">Copa</a>, <a href="http://www.emn.fr">Ecole des Mines de Nantes</a>-<a * href="http://www.irccyn.ec-nantes.fr/irccyn/d/en/equipes/Slp">SLP</a> * @version 1.0 #created 22-Feb-2010 02:28:00 p.m. */ public abstract class MSAEventHandler<E extends MSAEvent, S extends IScenario, I extends IInstance> implements IEventHandler<E> { /** The parent MSA instance */ private final MSAProxy<S, I> mParentMSA; /** * Getter for the parent MSA instance proxy * * @return the MSA instance proxy that is associated with this handler */ protected MSAProxy<S, I> getParentMSAProxy() { return this.mParentMSA; } public MSAEventHandler(MSAProxy<S, I> parentMSA) { this.mParentMSA = parentMSA; } @Override public String toString() { return String.format("%s@%s", this.getClass().getSimpleName(), hashCode()); } }// end MSAEventHandler