You are on page 1of 1

Dispatch Process Overview

Zend_Controller_Front‐>dispatch()
Create Std. Request Object Standard: Zend_Controller_Router_Rewrite
Also 
Zend_Controller_Request_Http
registered 
in Plugin
Create Std. Response Object Find matching Route 
Broker Write Module, Controller, Action 
Zend_Controller_Response_Http Set ‚default‘ Route  (which Route matches the  Extract Module, Controller, 
and all Parameters into the 
(if not present) URL,  Last‐In‐First‐Out  Action and Parameters from URL
Request Object
Principle)
Plugin Call: Route Startup

Routing

Zend_Controller_Dispatcher_Standard Zend_Controller_Action_HelperBroker‐>__construct()
Plugin Call: Route Shutdown
Set Action Controller Instance in all Action Helpers (loop)

Call Init() methods of all registered Helpers
Plugin Call: dispatchLoopStartup Read Method and Action from Request Object registered in the Broker

do
Zend_Controller_Action‐>dispatch()
dsd Create Instance of the appropiate Action Controller. 
Set  dispatched = true in Request Object Constructor of Zend_Controller_Action creates
Zend_Controller_Action_HelperBroker.
Helper Call: PreDispatch
Plugin Call: preDispatch

Set dispatched = true in Request Object


Is Request Object reseted through a preDispatch Yes Call preDispatch() 
Plugin?

Output in Buffer: 
Action Controller Dispatch Process ob_start() isDispatched() ==  true?
No

Plugin Call: postDispatch Call Action Controller's dispatch() method Call of the Action Method


(Passes the Name of Action to the Method)

While Request Object not dispatched ( == false)


Write buffered output to the Response object Call postDispatch() 
using appendBody()
Plugin Call: dispatchLoopShutdown

Destroy Action Controller Object Helper Call: PostDispatch

Send collated content from Response Object

Plugin Call Helper Call Try – Catch Block V 1.01, Created by Thorsten Ruf

You might also like