/[cvs]/nfo/php/libs/org.netfrag.elib/xml/wddx/wddx_engine.library
ViewVC logotype

Annotation of /nfo/php/libs/org.netfrag.elib/xml/wddx/wddx_engine.library

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (hide annotations) (vendor branch)
Wed Jan 23 17:40:37 2002 UTC (22 years, 7 months ago) by cvsjoko
Branch: nfo, MAIN
CVS Tags: v003, HEAD
Changes since 1.1: +0 -0 lines
initial

1 cvsjoko 1.1 <?
2    
3     // --------------------------------------------------------
4     function loadClientLibraries($libbase) { ?>
5    
6     <!-- js_lib_wddx start -->
7     <SCRIPT LANGUAGE="javascript" SRC="<?= $libbase ?>wddx/wddx.js"></SCRIPT>
8     <SCRIPT LANGUAGE="javascript" SRC="<?= $libbase ?>wddx/wddxDes.js"></SCRIPT>
9     <SCRIPT LANGUAGE="javascript" SRC="<?= $libbase ?>wddx/wddxRsEx.js"></SCRIPT>
10     <SCRIPT LANGUAGE="javascript">
11     /*
12     var Deserializer = new WddxDeserializer();
13     function wddx_unserialize (wddxpacket)
14     {
15     Obj = Deserializer.deserialize(wddxpacket);
16     return Obj;
17     }
18     */
19     </SCRIPT>
20     <!-- js_lib_wddx end -->
21    
22     <? }
23    
24    
25    
26     class WddxPacketFactory {
27    
28     // arg: the name of the wddx-package we need to send data to the client
29     var $wddxPacketName;
30     var $callback_getWddxPacket;
31     var $callback_getDataStructure;
32     var $jsGlobalScope_RelativeDomAddress;
33    
34     // ---------------------------------------------------------------------------------------
35     function init($args = array()) {
36     // set default-values
37     //$this->namespace = 'dummy';
38     $this->wddxPacketName = 'dummy';
39     $this->callback_getWddxPacket = 'dummy';
40     //$this->callback_getDataStructurePath = 'dummy';
41     $this->callback_getDataStructure = 'dummy';
42     // set object-variables from method-arguments
43     //isset($args['namespace']) && ($this->namespace = $args['namespace']);
44     isset($args['wddxPacketName']) && ($this->wddxPacketName = $args['wddxPacketName']);
45     isset($args['callback_getWddxPacket']) && ($this->callback_getWddxPacket = $args['callback_getWddxPacket']);
46     //isset($args['callback_getDataStructurePath']) && ($this->callback_getDataStructurePath = $args['callback_getDataStructurePath']);
47     isset($args['callback_getDataStructure']) && ($this->callback_getDataStructure = $args['callback_getDataStructure']);
48     isset($args['jsGlobalScope_RelativeDomAddress']) && ($this->jsGlobalScope_RelativeDomAddress = $args['jsGlobalScope_RelativeDomAddress']);
49     }
50    
51    
52     // ---------------------------------------------------------------------------------------
53     function renderWddxPacket($args = array()) {
54    
55     global $tracking;
56    
57     if (!$this->callback_getWddxPacket) { return; }
58    
59     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
60     // handle caching of wddx-packet in javascript-scope
61    
62     // build cache-key
63     $cachekey = 'wddx_' . $this->wddxPacketName;
64     //print "cache-key: $cachekey<br>";
65    
66     // determine cache-status by cache-key
67     $bool_cached = $tracking->getStatusAttribute("cache::js::keys::$cachekey");
68     //print "bool_cached: $bool_cached<br>";
69    
70     // just continue, if the result isn't already cached!
71     if (!$bool_cached) {
72    
73     // can we get the wddx-packet?
74     if (isset($this->callback_getWddxPacket) && ($this->callback_getWddxPacket != '') ) {
75    
76     // get wddx-packet by calling a callback-method
77     $funcref = $this->callback_getWddxPacket;
78     $wddx_packet =& $funcref();
79    
80     // render (output!) the wddx-packet
81     $tracking->loadLibrary('JavaScript');
82     JsDataStore_CreateWddxPacket($this->jsGlobalScope_RelativeDomAddress, $this->wddxPacketName, $wddx_packet);
83    
84     // set cache-flag
85     $tracking->setStatusAttribute("cache::js::keys::$cachekey", 1);
86     }
87    
88     }
89    
90     }
91    
92    
93    
94     }
95    
96     ?>

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