Zend Framework 1.5.1 - zietlow.net

27 downloads 142 Views 213KB Size Report
dsd. Plugin Aufruf: Route Startup. Routing. Standard Response Objekt erstellen wenn nicht übergeben. (Zend_Controller_Response_Http). Standard Request ...
Zend_Controller_Front‐>dispatch() Standard Request Objekt erstellen wenn nicht übergeben  (Zend_Controller_Request_Http)

Werden  auch in  Plugin Broker  registriert

Standard Response Objekt erstellen wenn nicht übergeben  (Zend_Controller_Response_Http)

Standard: Zend_Controller_Router_Rewrite

‚default‘ Route setzen wenn  noch nicht vorhanden

Finde die passende Route  (LIFO Prinzip)

Plugin Aufruf: Route Startup

Anhand der Route können nun  alle Parameter bestimmt  werden (Module, Controller,  Action, …)

Schreibe alle ermittelten Parameter in das Request  Objekt

Routing Zend_Controller_Dispatcher_Standard Plugin Aufruf: Route Shutdown

Zend_Controller_Action_HelperBroker‐>__construct() In allen Helpern Action Controller Instanz setzen 

Aus dem Request Objekt die Methode und die Aktion   auslesen

Plugin Aufruf: dispatchLoopStartup

Init() von allen im Broker registrierten Helpern aufrufen

do Zend_Controller_Action‐>dispatch() Instanz des entsprechenden Action Controllers  erstellen. Konstruktor von Zend_Controller_Action erstellt Zend_Controller_Action_HelperBroker.

dsd Im Response Objekt dispatched = true setzen

Helper Aufruf: PreDispatch Plugin Aufruf: preDispatch Wurde Response Object durch ein preDispatch Plugin auf false zurückgesetzt?

Ja

Im Response Objekt dispatched = true setzen

Ausgaben puffern ob_start()

isDispatched() ==  true?

Dispatch des Action Controllers aufrufen (Action Name  wird übergeben)

Aufruf der eigentlichen Action Methode die übergeben  wurde von  Zend_Controller_Dispatcher_Standard

Action Controller Dispatch Prozess

Plugin Aufruf: postDispatch

Aufruf von preDispatch()  Kann in eigenem Action Controller überschrieben werden

While Response Objekt nicht dispatched ( == false) ist. Gepufferte Ausgaben  mittels appendBody in das  Response Objekt schreiben

Aufruf von postDispatch()  Kann in eigenem Action Controller überschrieben werden

Plugin Aufruf: dispatchLoopShutdown Nein

Action Controller Objekt zerstören

Helper Aufruf: PostDispatch

Ausgeben des Response Objektes oder Methode dispatch des Front Controllers  liefert Response zurück

Plugin Áufruf

Helper Áufruf

Try – Catch Block

© 2008  Thorsten Ruf