| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Dec 2005
Beiträge: 99
| RobotLegs Initialisierungsprozess
Hi, ich habe gerade angefangen ein Projekt auf Basis von RobotLegs zu implementieren und eine Frage zum Initialisierungsprozess meiner Anwendung. Nachdem ich den Kontext erzeugt habe instanziiere ich eine View namens Root. Der dazugehörige Mediator dispatched ein Event der auf ein Command gemapped wird welcher den initialen state des Models setzt. Zum Beispiel werden Daten zu Listen hinzugefügt und das Model dispatched für jeden Datensatz ein entsprechendes Event. Das Event wird dann von der View über einen oder mehrere Mediator abgefangen und die View entsprechend aktualisiert. Das Problem ist nun, dass ich nicht so recht weiss wann welcher Mediator über das Framework initialisiert wird und das Model teilweise schon lange initialisiert ist bevor die entsprechenden Mediator zur Verfügung stehen. Zwar kann ich im Mediator dann einmal über den Datensatz des Models iterieren und zusätzlich Listener für die Modelevents implementieren aber lieber wäre es mir, mir das initiale iterieren zu sparen und nur die Events zu nutzen. Dafür müsste ich aber sicher sein, dass alle nötigen Mediator schon registriert worden sind.
__________________ http://blog.johannes-hodde.com |
| | |
| | #2 (permalink) | ||||
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 513
| Zitat:
Zitat:
Zitat:
Zitat:
Was meinst Du damit, dass Du Dir das initiale Iterieren sparen willst? Wie fein granuliert Du Daten aus deinem Model rausschickst, damit ein korrespondierender Mediator möglichst wenig Arbeit hat diese Daten für die View aufzubereiten ist eine Frage, die es abzuwägen gilt. Es spricht doch nichts dagegen, dass ein Mediator kurz über eine Liste von Datensätzen läuft und mit den Inhalten speziell seine View befüttert. Ich glaube, Du musst das mal genauer erklären.
| ||||
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Dec 2005
Beiträge: 99
|
Hier ein Model: PHP-Code: PHP-Code: Nachdem der Context initialisiert ist, wird der View generiert und auf die Bühne gesetzt. Danach wird der StartUpEvent dispatched und eigentlich sollte ja an der Stelle der Mediator bereits initialisiert sein, sich für das ModelEvent registriert haben und dementsprechend mitkriegen wenn Daten hinzugefügt werden. Dem ist aber leider nicht so weil der Mediator offenbar so verspätet registriert wird, dass das Model bereits initialisiert ist.
__________________ http://blog.johannes-hodde.com |
| | |
| | #4 (permalink) | |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 513
| Zitat:
Und warum du das Iterieren sparen möchtest und NUR mit Events arbeiten willst, erkläre auch bitte genauer. Geändert von malthoff (26-03-2011 um 14:47 Uhr) | |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Dec 2005
Beiträge: 99
|
Hey, sorry für die späte Antwort. leider habe ich den code gerade nicht zur Hand aber im Prinzip ist es wie ich es bereits beschrieben habe. Im Context wird ViewX auf MediatorX gemapped und am Ende der StartUpEvent dispatched welcher auf StartUpCommand gemapped ist. MediatorX registriert sich bei Instanziierung als Listener bei ModelX. Das Log bestätigt, dass, obwohl das Model erst nach der Erzeugung des View initialisiert wird, der Mediator zu spät erzeugt wird. 1. Context wird erzeugt 2. addChild(new ViewX) - ViewX wurde vorher auf MediatorX gemapped 3. StartUpEvent wird dispatched 4. Model wird initialisiert 5. Mediator kommt zu spät, Model ist bereits initialisiert.
__________________ http://blog.johannes-hodde.com |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Walking On Robotlegs (Till Schneidereit) | marc | FFK11 | 0 | 02-03-2011 16:48 |