projet-donnees-reparties/linda/server/LindaServer.java
2021-11-30 17:39:17 +01:00

69 lines
1.8 KiB
Java

package linda.server;
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
import java.util.Collection;
import linda.Callback;
import linda.Linda;
import linda.Tuple;
import linda.shm.CentralizedLinda;
/**
* lindaServer
*/
public class LindaServer extends UnicastRemoteObject implements Linda {
Linda lindaInstance;
public static void main(String[] args) {
try {
LindaServer ls = new LindaServer();
Naming.bind(args[0], ls);
System.out.println("L'instance Linda a été publié sur le registre (" + args[0] + ") !\n");
} catch (Exception e) {
e.printStackTrace();
}
}
public LindaServer() throws RemoteException {
this.lindaInstance = new CentralizedLinda();
}
public void write(Tuple t) {
lindaInstance.write(t);
System.out.println("Le tuple " + t + " a été ajouté au TupleSpace !");
}
public Tuple take(Tuple template) {
return lindaInstance.take(template);
}
public Tuple read(Tuple template) {
return lindaInstance.read(template);
}
public Tuple tryTake(Tuple template) {
return lindaInstance.tryTake(template);
}
public Tuple tryRead(Tuple template) {
return lindaInstance.tryRead(template);
}
public Collection<Tuple> takeAll(Tuple template) {
return lindaInstance.takeAll(template);
}
public Collection<Tuple> readAll(Tuple template) {
return lindaInstance.readAll(template);
}
public void eventRegister(eventMode mode, eventTiming timing, Tuple template, Callback callback) {
lindaInstance.eventRegister(mode, timing, template, callback);
}
public void debug(String prefix) {
lindaInstance.debug(prefix);
}
}