| 1 | <? | <? | 
| 2 | /** | /** | 
| 3 | * This file contains the abstract MVCPage class. | * This file contains the DesignPattern::AdapterProxy namespace. | 
|  | * It inherits from phpHtmlLib's abstract PageWidget |  | 
|  | * class to seamlessly integrate into its render queue. |  | 
| 4 | * | * | 
| 5 | * @author Andreas Motl <andreas.motl@ilo.de> | * @author Andreas Motl <andreas.motl@ilo.de> | 
| 6 | * @package org.netfrag.glib | * @package org.netfrag.glib | 
| 7 | * @name DesignPattern::AdapterProxy | * @name DesignPattern::AdapterProxy | 
| 8 |  | * @filesource | 
| 9 | * | * | 
| 10 | */ | * <b>Cvs-Log:</b> | 
| 11 |  | * | 
| 12 | /** | * <pre> | 
| 13 | * $Id$ | * $Id$ | 
| 14 | * | * | 
| 15 | * $Log$ | * $Log$ | 
| 16 |  | * Revision 1.6  2003/03/05 17:02:22  joko | 
| 17 |  | * updated docu (phpDocumentor testing....) | 
| 18 |  | * | 
| 19 |  | * Revision 1.5  2003/03/05 16:45:58  joko | 
| 20 |  | * updated docu (phpDocumentor testing....) | 
| 21 |  | * | 
| 22 |  | * Revision 1.4  2003/03/05 16:32:18  joko | 
| 23 |  | * updated docu (phpDocumentor testing....) | 
| 24 |  | * | 
| 25 |  | * Revision 1.3  2003/03/05 16:10:17  joko | 
| 26 |  | * updated docu (phpDocumentor testing....) | 
| 27 |  | * | 
| 28 | * Revision 1.2  2003/03/05 15:41:03  joko | * Revision 1.2  2003/03/05 15:41:03  joko | 
| 29 | * updated docu (phpDocumentor testing....) | * updated docu (phpDocumentor testing....) | 
| 30 | * | * | 
| 33 | * | * | 
| 34 | * Revision 1.1  2003/03/03 22:11:08  joko | * Revision 1.1  2003/03/03 22:11:08  joko | 
| 35 | * + initial commit | * + initial commit | 
| 36 |  | * </pre> | 
| 37 | * | * | 
| 38 | * | * | 
| 39 | */ | */ | 
| 40 |  | // cvs-log | 
| 41 |  |  | 
| 42 |  |  | 
| 43 |  | /** | 
| 44 |  | * Make sure we have the required parent class | 
| 45 |  | */ | 
| 46 |  | loadModule('DesignPattern::TransparentProxy'); | 
| 47 |  |  | 
| 48 |  |  | 
| 49 | /** | /** | 
| 50 | * This class is used to build content | * This tries to combine some DesignPatterns.... | 
|  | * for an MVC controlled page.  It instantiates |  | 
|  | * an concrete helper MVC object which does the |  | 
|  | * dispatching stuff. (phpHtmlLib::controller::WebMVC, |  | 
|  | * inherited from the abstract DesignPattern::MVC) |  | 
|  | * |  | 
|  | * This class is established here to act as a wrapper |  | 
|  | * bringing MVC and phpHtmlLib together. |  | 
|  | * |  | 
|  | * By now we inherit from the PageWidget, but this has |  | 
|  | * to be broken using the ProxyPattern or s.th.l.th. |  | 
|  | * I guess we'll have to dispatch to arbitrary concrete |  | 
|  | * Page-implementations here in future... |  | 
| 51 | * | * | 
| 52 |  | * It combines features from both the standard Proxy | 
| 53 |  | * and the TransparentProxy adding some Adapter features. | 
| 54 | * | * | 
| 55 | * @author Andreas Motl <andreas.motl@ilo.de> | * @author Andreas Motl <andreas.motl@ilo.de> | 
|  | * @link http://www.netfrag.org/~joko/ |  | 
| 56 | * @copyright (c) 2003 - All Rights reserved. | * @copyright (c) 2003 - All Rights reserved. | 
| 57 |  | * @link http://www.netfrag.org/~joko/ | 
| 58 |  | * <br> | 
| 59 | * @license GNU LGPL (GNU Lesser General Public License) | * @license GNU LGPL (GNU Lesser General Public License) | 
| 60 | * @link http://www.gnu.org/licenses/lgpl.txt | * @link http://www.gnu.org/licenses/lgpl.txt | 
| 61 | * | * <br> | 
| 62 | * @package org.netfrag.glib | * @package org.netfrag.glib | 
| 63 |  | * @subpackage DesignPattern | 
| 64 | * @name DesignPattern::AdapterProxy | * @name DesignPattern::AdapterProxy | 
| 65 | * | * | 
| 66 |  | * @todo Learn TransparentProxy to do procedural calls ... | 
| 67 |  | * ... instead of instantiating a component and even less code could be in here | 
| 68 |  | * benefit: the TransparentProxy would be become even more powerful | 
| 69 |  | * eeäähhh, to the master Proxy it goes......!!! This one calls the handler(s)! | 
| 70 |  | * | 
| 71 | */ | */ | 
|  |  |  | 
|  | /** |  | 
|  | * Make sure we have the required parent class |  | 
|  | */ |  | 
|  |  |  | 
|  | //class Site_WebPageMVC extends PageWidget { |  | 
|  | //loadModule('DesignPattern::MVC'); |  | 
|  |  |  | 
|  | //require_once($phphtmllib."/widgets/PageWidget.inc"); |  | 
|  |  |  | 
|  |  |  | 
|  | // TODO: Learn TransparentProxy to do procedural calls instead |  | 
|  | // of instantiating a component and even less code could be in here..... |  | 
|  | // benefit: the TransparentProxy would be become even more powerful |  | 
|  | // eeäähhh, to the master Proxy it goes......!!! This one calls the handler(s)! |  | 
|  |  |  | 
|  |  |  | 
|  | //class Site_Adapter_php_Class { |  | 
|  | //class Site_Adapter_php_IncludeFile extends GenericDataWidget { |  | 
| 72 | class DesignPattern_AdapterProxy extends DesignPattern_TransparentProxy { | class DesignPattern_AdapterProxy extends DesignPattern_TransparentProxy { | 
| 73 |  |  | 
| 74 | var $_adapter; | var $_adapter; |