package edu.ucsb.jpregel.system.commands; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; import java.util.Map; import jicosfoundation.Command; import jicosfoundation.Proxy; import jicosfoundation.Service; import edu.ucsb.jpregel.system.Worker; /** * Worker: Set integerToWorkerMap. * @author Pete Cappello */ public class SetWorkerMap implements Command<Worker> { private Map<Integer, Service> integerToWorkerMap; public SetWorkerMap() {} public SetWorkerMap( Map<Integer, Service> integerToWorkerMap ) { this.integerToWorkerMap = integerToWorkerMap; } @Override public void execute(Proxy proxy) { proxy.sendCommand( this ); } @Override public void execute( Worker worker) throws Exception { worker.setWorkerMap( integerToWorkerMap ); } @Override public void writeExternal(ObjectOutput oo) throws IOException { oo.writeObject(integerToWorkerMap); } @Override public void readExternal(ObjectInput oi) throws IOException, ClassNotFoundException { integerToWorkerMap = (Map<Integer, Service>) oi.readObject(); } }