Also ich würde mal behaupten das Problem liegt nicht darin das Display zu aktualisieren.Evgeni hat geschrieben:Wir casten es zu Node und dann in unserem aspect, dass wir als "priveleged aspect" deklarieren, greifen wir auf node.hierarchieDisplay zu und dann node.hierarchieDisplay.refresh() aufrufen, wobei node ein Objekt vom Type Node ist.ChNeumann hat geschrieben:Das Problem kommt genau danach.
Worauf fuehrst du refresh() aus, wenn das Observer-Interface die Methode nicht enthaelt und du damit refresh() nicht auf den Observern aufrufen kannst?
"priveleged aspect" erlaubt Zugriff auf ALLE private und protected Variablen.
Mir geht es zumindest einfach darum dass das Aktualisieren des Displays nichts mit dem vorgegebenen Observer-Interface (Änderung des Company-Modells) hat.
Ich hätte auch kein Problem damit das irgendwie hinzubekommen, mir gehts einfach darum was eine "gute" Lösung ist und nicht einfach was zu "hacken".
Man könnte sich übrigens den Zugriff auf protected-Variablen sparen indem man das HierarchyDisplay "abfängt" wenn es erzeugt wird (z.B. mit dem initialization Join-Point). Das wäre natürlich keine gute Idee wenn es mehrere Displays gibt.
Ich würde Tom oder Marcel bitten mal eine Aussage zu dem Thema zu machen. Sind ja nur noch ein paar Stunden Zeit...
Uwe