afficheur update canalAysnc now

This commit is contained in:
tuanvu
2025-11-10 10:32:43 +01:00
parent 3a1f73170f
commit 7991791a94
4 changed files with 10 additions and 13 deletions

View File

@@ -1,6 +1,6 @@
package impl;
import interfaces.Capteur;
import interfaces.CapteurAsync;
import interfaces.ObserverdeCapteur;
import java.util.Random;
@@ -17,9 +17,9 @@ public class Afficheur implements ObserverdeCapteur {
//AO1 - concrete servant
@Override
public void update(Canal canalAsync) {
public void update(CapteurAsync capteurAsync) {
try{
Future<Integer> futureValue= canalAsync.getValue();
Future<Integer> futureValue= capteurAsync.getValue();
Integer value=futureValue.get();
System.out.println("Afficheur " + id+", value: "+ value);
}catch(Exception e){

View File

@@ -1,23 +1,23 @@
package impl;
import interfaces.Capteur;
import interfaces.CapteurAsync;
import interfaces.ObserverdeCapteur;
import java.util.concurrent.Callable;
public class UpdateReq implements Callable<Void> {
private Canal canalAsync;
private CapteurAsync canalProxy;
private ObserverdeCapteur afficheur;
public UpdateReq(Canal canalAsync, ObserverdeCapteur afficheur) {
this.canalAsync = canalAsync;
public UpdateReq(CapteurAsync canalProxy, ObserverdeCapteur afficheur) {
this.canalProxy = canalProxy;
this.afficheur = afficheur;
}
//AO1 - concrete MI
@Override
public Void call() {
afficheur.update(canalAsync);
afficheur.update(canalProxy);
return null;
}
}

View File

@@ -3,5 +3,5 @@ import impl.Canal;
public interface ObserverdeCapteur{
//AO1 - servant
public void update(Canal canalAsync);
public void update(CapteurAsync capteurAsync);
}

View File

@@ -1,5 +1,3 @@
import java.util.Timer;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
@@ -8,11 +6,10 @@ import impl.Canal;
import impl.CapteurImpl;
import impl.Scheduler;
import interfaces.Capteur;
import interfaces.ObserverdeCapteur;
public class main {
static int NB_CANAUX = 2;
static int NB_CANAUX = 3;
public static void main(String[] argv){
Scheduler scheduler = new Scheduler(NB_CANAUX);