package se.chalmers.gdcn.deceitful; import net.tomp2p.p2p.Peer; import net.tomp2p.peers.Number160; import net.tomp2p.peers.PeerAddress; import se.chalmers.gdcn.communicationToUI.ClientInterface; import se.chalmers.gdcn.network.AbstractDeceitfulWork; import se.chalmers.gdcn.network.TaskPasser; import se.chalmers.gdcn.network.TaskPasser.WorkMethod; import se.chalmers.gdcn.replica.ReplicaBox; /** * Created by HalfLeif on 2014-05-23. */ public class StopWork extends AbstractDeceitfulWork { public StopWork(ClientInterface client, TaskPasser taskPasser, Peer peer) { super(client, taskPasser, peer); } /** * Simple attempt to receive one task but not do anything with it. * @param jobOwner jobOwner to dupe */ @Deceitful @Override public void requestWork(PeerAddress jobOwner) { taskPasser.requestWork(jobOwner, false, new WorkMethod() { @Override public void work(final PeerAddress jobOwner, final ReplicaBox replicaBox, final boolean autoWork) { final Number160 resultKey = replicaBox.getResultKey(); final String taskName = replicaBox.getTaskMeta().getTaskName(); System.out.println("Task " + taskName + " finished. Will never notify job owner!"); } }); } }