/[cvs]/nfo/php/libs/org.netfrag.glib/DataSource/Locator.php
ViewVC logotype

Diff of /nfo/php/libs/org.netfrag.glib/DataSource/Locator.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.22 by joko, Tue Mar 11 04:03:54 2003 UTC revision 1.31 by joko, Fri Mar 28 06:46:00 2003 UTC
# Line 24  Line 24 
24   * $Id$   * $Id$
25   *   *
26   * $Log$   * $Log$
27     * Revision 1.31  2003/03/28 06:46:00  joko
28     * new helper: 'function get_call'
29     *
30     * Revision 1.30  2003/03/28 03:02:50  joko
31     * propagating parameters for rpc-debugging and options here
32     *
33     * Revision 1.29  2003/03/18 02:01:47  joko
34     * minor update (mungling with phpDocumentor again)
35     *
36     * Revision 1.28  2003/03/18 01:52:33  joko
37     * minor update (mungling with phpDocumentor again)
38     *
39     * Revision 1.27  2003/03/11 16:44:59  joko
40     * + fixed metadata for phpDocumentor
41     *
42     * Revision 1.26  2003/03/11 16:41:47  joko
43     * + fixed metadata for phpDocumentor
44     *
45     * Revision 1.25  2003/03/11 16:28:25  joko
46     * + fixed metadata for phpDocumentor
47     *
48     * Revision 1.24  2003/03/11 04:49:25  joko
49     * + fixed metadata for phpDocumentor
50     *
51     * Revision 1.23  2003/03/11 04:15:01  joko
52     * + fixed metadata for phpDocumentor
53     *
54   * Revision 1.22  2003/03/11 04:03:54  joko   * Revision 1.22  2003/03/11 04:03:54  joko
55   * + fixed metadata for phpDocumentor   * + fixed metadata for phpDocumentor
56   *   *
# Line 100  Line 127 
127   * <b>Modes:</b> (these are proposals, more or less...)   * <b>Modes:</b> (these are proposals, more or less...)
128   * o Pass-Through-Reference: php Object will get passed through all layers   * o Pass-Through-Reference: php Object will get passed through all layers
129   * o Pass-Through-Memory: reference to a memory area will get used   * o Pass-Through-Memory: reference to a memory area will get used
130   * + Build-Locator: build locator from datasource-type and adapter-type   * + (x) Build-Locator: build locator from datasource-type and adapter-type
131   * o Use-Locator: directly use DataSource::Locator instance passed in   * o Use-Locator: directly use DataSource::Locator instance passed in
132   * o Merge-Locators: merge metadata of two or more DataSource::Locator instances   * o Merge-Locators: merge metadata of two or more DataSource::Locator instances
133   * o Build-AutoLocator: use global constants making up our metadata   * o Build-AutoLocator: use global constants making up our metadata
# Line 133  Line 160 
160   * This module takes care of the rest.   * This module takes care of the rest.
161   * Pass an array to the constructor: (e.g.)   * Pass an array to the constructor: (e.g.)
162   *   *
163   * <code>   * <pre>
164   *    // 1. for doing rpc-calls....   *    // 1. for doing rpc-calls....
165   *    $locator = array(   *    $locator = array(
166   *      datasource_type => 'rpc',   *      datasource_type => 'rpc',
# Line 142  Line 169 
169   *    );   *    );
170   *    $source = ne w DataSource::Generic($locator);   *    $source = ne w DataSource::Generic($locator);
171   *    $this->set_data_source( &$source );   *    $this->set_data_source( &$source );
172   * </code>   * </pre>
173   *   * <pre>
  * <code>  
174   *    // 2. [proposal] for common/oldschool datahandles....   *    // 2. [proposal] for common/oldschool datahandles....
175   *    $locator = array(   *    $locator = array(
176   *      dsn => 'known dsn markup',   *      dsn => 'known dsn markup',
177   *    );   *    );
178   *    $source = ne w DataSource::Generic($locator);   *    $source = ne w DataSource::Generic($locator);
179   *    $this->set_data_source( &$source );   *    $this->set_data_source( &$source );
180   * </code>   * </pre>
181   *   *
182   *   *
183   *   *
# Line 180  class DataSource_Locator { Line 206  class DataSource_Locator {
206      * depending on $_options[datasource]. <br>      * depending on $_options[datasource]. <br>
207      * (main dispatching level)      * (main dispatching level)
208      *      *
209      * <pre>      * <br>
210        *
211      * The structure of a full blown locator looks like this:      * The structure of a full blown locator looks like this:
212      * <code>      * <code>
213      *  $locator = array(      *  $locator = array(
# Line 191  class DataSource_Locator { Line 218  class DataSource_Locator {
218      *    [dsn => '<your dsn markup>'],      *    [dsn => '<your dsn markup>'],
219      *  );      *  );
220      * </code>      * </code>
     * </pre>  
221      *      *
222      * Example 1 - data is inside a rdbms, using a dsn to connect to it:      * Example 1 - data is inside a rdbms, using a dsn to connect to it:
223      * <code>      * <code>
     * <pre>  
224      *  $locator = array(      *  $locator = array(
225      *    dsn => 'mysql://username:password@localhost/database',      *    dsn => 'mysql://username:password@localhost/database',
226      *  );      *  );
     * </pre>  
227      * </code>      * </code>
228      *      *
229      * Example 2 - data is inside an odbms, reachable by doing remote procedure calls (rpc):      * Example 2 - data is inside an odbms, reachable by doing remote procedure calls (rpc):
# Line 347  class DataSource_Locator { Line 371  class DataSource_Locator {
371    
372      function &get_metadata() {      function &get_metadata() {
373          //return ($this->_out);          //return ($this->_out);
374            //print Dumper($this->_metadata);
375          return $this->_metadata;          return $this->_metadata;
376      }      }
377    
# Line 355  class DataSource_Locator { Line 380  class DataSource_Locator {
380            
381      // trace      // trace
382        //print Dumper($this);        //print Dumper($this);
383        
384      $good = 0;      $good = 0;
385      switch ($this->_datasource_type) {      switch ($this->_datasource_type) {
386        case 'rpc':        case 'rpc':
# Line 367  class DataSource_Locator { Line 392  class DataSource_Locator {
392            //package => 'DesignPattern::RemoteProxy',            //package => 'DesignPattern::RemoteProxy',
393            Host => RPC_HOSTNAME,            Host => RPC_HOSTNAME,
394            Port => RPC_PORT,            Port => RPC_PORT,
395              DEBUG => defined('RPC_DEBUG') ? RPC_DEBUG : null,
396              TRACE => defined('RPC_TRACE') ? RPC_TRACE : null,
397              DISCONNECT_ON_ERROR => defined('RPC_DISCONNECT_ON_ERROR') ? RPC_DISCONNECT_ON_ERROR : null,
398          );          );
399          $good = 1;          $good = 1;
400          break;          break;
# Line 404  class DataSource_Locator { Line 432  class DataSource_Locator {
432      return 1;      return 1;
433    }    }
434    
435          function get_call() {
436        return array(
437          method => $this->_call[_method],
438          args => $this->_call[_arguments],
439        );
440      }
441    
442  }  }
443    
444  ?>  ?>

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.31

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