Files
alp-projet/src/impl/Canal.java

34 lines
919 B
Java

package impl;
import interfaces.Capteur;
import interfaces.CapteurAsync;
import interfaces.ObserverDeCapteurAsync;
import interfaces.ObserverdeCapteur;
import java.util.Random;
import java.util.concurrent.Future;
public class Canal implements ObserverDeCapteurAsync, CapteurAsync {
private Scheduler scheduler;
private ObserverdeCapteur afficher;
private Capteur capteur;
public Canal(Capteur capteur, Scheduler scheduler, ObserverdeCapteur afficher) {
this.capteur = capteur;
this.scheduler = scheduler;
this.afficher = afficher;
}
//AO1 - proxy
@Override
public Future<?> update() {
return scheduler.enquete(new UpdateReq(this,afficher),new Random().nextInt(1000)+500);
}
//AO2 - proxy
@Override
public Future<Integer> getValue() {
return scheduler.enquete(new GetValueReq(capteur),new Random().nextInt(1000)+500);
}
}