2 * $Id: Forwarder.java 5059 2007-11-19 20:01:59Z mquinson $
\r
4 * Copyright 2006,2007 Martin Quinson, Malek Cherier
\r
5 * All rights reserved.
\r
7 * This program is free software; you can redistribute it and/or modify it
\r
8 * under the terms of the license (GNU LGPL) which comes with this package.
\r
11 import simgrid.msg.*;
\r
13 public class Forwarder extends simgrid.msg.Process {
\r
15 public void main(String[] args) throws JniException, NativeException
\r
19 int aliasCount = args.length;
\r
25 BasicTask basicTask;
\r
29 taskReceived = Task.receive();
\r
31 if(taskReceived instanceof FinalizeTask)
\r
33 Msg.info("All tasks have been dispatched. Let's tell everybody the computation is over.");
\r
35 for (int i = 0; i < aliasCount; i++)
\r
37 finalizeTask = new FinalizeTask();
\r
38 finalizeTask.send(args[i]);
\r
44 basicTask = (BasicTask)taskReceived;
\r
46 Msg.info("Received \"" + taskReceived.getName() + "\" ");
\r
48 Msg.info("Sending \"" + taskReceived.getName() + "\" to \"" + args[taskCount % aliasCount] + "\"");
\r
50 basicTask.send(args[taskCount % aliasCount]);
\r
56 Msg.info("I'm done. See you!");
\r