/[cvs]/nfo/php/libs/org.netfrag.glib/Application/Request/HttpController.php
ViewVC logotype

Annotation of /nfo/php/libs/org.netfrag.glib/Application/Request/HttpController.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations)
Wed Mar 5 18:54:42 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
Changes since 1.2: +20 -18 lines
updated docu - phpDocumentor is very strict about its 'blocks'...

1 joko 1.1 <?php
2    
3     /**
4     * This file contains the concrete Application::Request::Http Controller class.
5     *
6     * @author Andreas Motl <andreas.motl@ilo.de>
7     * @package org.netfrag.glib
8 joko 1.3 * @name Application::Request::HttpController
9 joko 1.1 *
10     */
11    
12     /**
13 joko 1.3 * $Id: HttpController.php,v 1.2 2003/03/03 21:13:59 joko Exp $
14 joko 1.2 *
15     * $Log: HttpController.php,v $
16 joko 1.3 * Revision 1.2 2003/03/03 21:13:59 joko
17     * + request translation
18     * mungled namespaces
19     * - purged old code
20     *
21 joko 1.2 * Revision 1.1 2003/03/01 21:11:18 joko
22     * + initial commit
23 joko 1.1 *
24     *
25     */
26    
27    
28     /**
29 joko 1.3 * This requires the Application::Request::BaseController base class
30     *
31     */
32     loadModule('Application::Request::BaseController');
33    
34     /**
35     * --- Application::Request::HttpController
36 joko 1.1 *
37 joko 1.3 * Responsible for GET and POST argument handling.
38     * Does an array_join_merge for now.
39 joko 1.1 *
40     * @author Andreas Motl <andreas.motl@ilo.de>
41     * @copyright (c) 2003 - All Rights reserved.
42     * @license GNU LGPL (GNU Lesser General Public License)
43     *
44 joko 1.3 * @link http://www.netfrag.org/~joko/
45     * @link http://www.gnu.org/licenses/lgpl.txt
46 joko 1.1 *
47     * @package org.netfrag.glib
48 joko 1.3 * @subpackage Application
49     * @name Application::Request::HttpController
50 joko 1.1 *
51     */
52     class Application_Request_HttpController extends Application_Request_BaseController {
53    
54     /**
55     * The constructor ...
56     * ... just does nothing.
57     *
58     * @param registry
59     */
60     function Application_Request_HttpController(&$request) {
61     //print Dumper($request);
62     //exit;
63     // propagate request data
64     $this->set_request($request);
65     }
66    
67     function get_request() {
68 joko 1.2 return php::array_join_merge($_GET, $_POST);
69     }
70    
71     function get_request_translated() {
72     return $this->translate_request($this->get_request());
73 joko 1.1 }
74    
75     function perform(&$metadata) {
76    
77 joko 1.2 $this->metadata = &$metadata;
78    
79 joko 1.1 //print "model: " . Dumper($metadata);
80     //print "request: " . Dumper($this->get_request());
81 joko 1.2 $request_translated = $this->get_request_translated();
82 joko 1.1
83     // trace
84     //print Dumper($request_mapped);
85     //exit;
86    
87     // 2. rule it! mungle request through dispatching rules - lambda-style callbacks
88     $results = array();
89     foreach ($this->_rules as $rule) {
90     //$in = array();
91 joko 1.2 $in = $request_translated;
92 joko 1.1 $out = array();
93     call_user_func($rule, &$in, &$out);
94     array_push($results, array( in => $in, out => $out));
95     }
96    
97     // trace
98     //print Dumper($results);
99     //exit;
100    
101     // 3. merge it! merge dispatching output ($_out!)
102     $final = array();
103     foreach ($results as $result) {
104     //print Dumper($result[out]);
105 joko 1.2 $final = php::array_join_merge($final, $result[out]);
106 joko 1.1 }
107    
108     // trace
109 joko 1.2 //print "final: " . Dumper($final);
110 joko 1.1 //exit;
111    
112     return $final;
113    
114     }
115    
116    
117    
118     }
119    
120     ?>

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed