X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/jaceP2P.git/blobdiff_plain/de28e13f31d33f1741cd941ba8103684979c226f..HEAD:/src/jaceP2P/JaceSpawnerServer.java diff --git a/src/jaceP2P/JaceSpawnerServer.java b/src/jaceP2P/JaceSpawnerServer.java index e210d88..fc3a3bb 100644 --- a/src/jaceP2P/JaceSpawnerServer.java +++ b/src/jaceP2P/JaceSpawnerServer.java @@ -2,9 +2,9 @@ package jaceP2P; import java.rmi.RemoteException; import java.rmi.server.UnicastRemoteObject; +import java.util.ArrayList; import java.util.Calendar; import java.util.GregorianCalendar; -import java.util.Vector; public class JaceSpawnerServer extends UnicastRemoteObject implements @@ -20,8 +20,7 @@ public class JaceSpawnerServer extends UnicastRemoteObject implements super(); } - @SuppressWarnings("unchecked") - public void startProcess(Vector spawnersList) throws RemoteException { + public void startProcess(ArrayList spawnersList) throws RemoteException { JaceSpawner.Instance().startProcess(spawnersList); } @@ -84,11 +83,31 @@ public class JaceSpawnerServer extends UnicastRemoteObject implements public boolean getFinished() throws RemoteException { return finished; } + + private class Signaler implements Runnable + { + JaceInterface host ; + int rankOfDead ; + Signaler( JaceInterface _host, int _rankOfDead ) + { + host = _host ; + rankOfDead = _rankOfDead ; + } + + @Override + public void run() + { + JaceSpawner.Instance().signalDeadNode( host, rankOfDead ) ; + } + + } - public void signalDeadNode(JaceInterface host, int rankOfDead) + public void signalDeadNode(JaceInterface host, int rankOfDead ) throws RemoteException { - System.out.println("SignalDeadNode of rank " + rankOfDead); - JaceSpawner.Instance().signalDeadNode(host, rankOfDead); + System.out.println( "SignalDeadNode of rank " + rankOfDead ) ; + + new Thread( new Signaler( host, rankOfDead ) ).start() ; +// JaceSpawner.Instance().signalDeadNode( host, rankOfDead ) ; } // heartBeat that detects if a Spawner is dead or alive