advancedSE-paul #3

Merged
paul merged 3 commits from advancedSE-paul into advancedSE 2025-05-26 16:01:42 +02:00
33 changed files with 253 additions and 128 deletions
Showing only changes of commit cf6bcd8498 - Show all commits

View File

@ -566,6 +566,7 @@ public class Controller_Frontend extends PICComponent implements FrontendControl
@Override
public void initialize(PICComponentLocator locator) {
super.initialize(locator);
executionTime.registerObserver(this);
this.picComponents = locator;
System.out.println("Frontend");
}

View File

@ -174,6 +174,7 @@ public class EEPROM extends PICComponent implements EEPROMInterface, ExecutionTi
@Override
public void initialize(PICComponentLocator locator) {
super.initialize(locator);
executionTime.registerObserver(this);
}
@Override

View File

@ -24,29 +24,8 @@ public abstract class ExecutionTimeSubject extends PICComponent implements PICCo
}
protected void notifyObservers(){
for (final ExecutionTimeObserver each : observers){
notify(each);
}
}
protected void notify(final ExecutionTimeObserver observer) {
createNotifierFor(observer).start();
}
protected Thread createNotifierFor(ExecutionTimeObserver observer) {
return new Thread(){
public void run(){
try {
observer.executionTimeChanged();
} catch (Exception e){
e.printStackTrace();
ExecutionTimeSubject.this.observers.remove(observer);
}
}
};
}
observers.forEach(o -> o.executionTimeChanged());
}
public double getTotalExecutionTime(){
throw new UnsupportedOperationException("No class implements ExecutionTimeSubject correctly!");

View File

@ -67,6 +67,7 @@ public class Timer extends PICComponent implements TimerInterface, ExecutionTime
@Override
public void initialize(PICComponentLocator locator) {
super.initialize(locator);
executionTime.registerObserver(this);
}
@Override