[ Index ]

PHP Cross Reference of moodle-2.8

title

Body

[close]

/lib/zend/Zend/Server/ -> Interface.php (source)

   1  <?php
   2  /**
   3   * Zend Framework
   4   *
   5   * LICENSE
   6   *
   7   * This source file is subject to the new BSD license that is bundled
   8   * with this package in the file LICENSE.txt.
   9   * It is also available through the world-wide-web at this URL:
  10   * http://framework.zend.com/license/new-bsd
  11   * If you did not receive a copy of the license and are unable to
  12   * obtain it through the world-wide-web, please send an email
  13   * to [email protected] so we can send you a copy immediately.
  14   *
  15   * @category   Zend
  16   * @package    Zend_Server
  17   * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
  18   * @license    http://framework.zend.com/license/new-bsd     New BSD License
  19   */
  20  
  21  /**
  22   * Zend_Server_Interface
  23   *
  24   * @category Zend
  25   * @package  Zend_Server
  26   * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
  27   * @license    http://framework.zend.com/license/new-bsd     New BSD License
  28   * @version $Id$
  29   */
  30  interface Zend_Server_Interface
  31  {
  32      /**
  33       * Attach a function as a server method
  34       *
  35       * Namespacing is primarily for xmlrpc, but may be used with other
  36       * implementations to prevent naming collisions.
  37       *
  38       * @param string $function
  39       * @param string $namespace
  40       * @param null|array Optional array of arguments to pass to callbacks at
  41       * dispatch.
  42       * @return void
  43       */
  44      public function addFunction($function, $namespace = '');
  45  
  46      /**
  47       * Attach a class to a server
  48       *
  49       * The individual implementations should probably allow passing a variable
  50       * number of arguments in, so that developers may define custom runtime
  51       * arguments to pass to server methods.
  52       *
  53       * Namespacing is primarily for xmlrpc, but could be used for other
  54       * implementations as well.
  55       *
  56       * @param mixed $class Class name or object instance to examine and attach
  57       * to the server.
  58       * @param string $namespace Optional namespace with which to prepend method
  59       * names in the dispatch table.
  60       * methods in the class will be valid callbacks.
  61       * @param null|array Optional array of arguments to pass to callbacks at
  62       * dispatch.
  63       * @return void
  64       */
  65      public function setClass($class, $namespace = '', $argv = null);
  66  
  67      /**
  68       * Generate a server fault
  69       *
  70       * @param mixed $fault
  71       * @param int $code
  72       * @return mixed
  73       */
  74      public function fault($fault = null, $code = 404);
  75  
  76      /**
  77       * Handle a request
  78       *
  79       * Requests may be passed in, or the server may automagically determine the
  80       * request based on defaults. Dispatches server request to appropriate
  81       * method and returns a response
  82       *
  83       * @param mixed $request
  84       * @return mixed
  85       */
  86      public function handle($request = false);
  87  
  88      /**
  89       * Return a server definition array
  90       *
  91       * Returns a server definition array as created using
  92       * {@link * Zend_Server_Reflection}. Can be used for server introspection,
  93       * documentation, or persistence.
  94       *
  95       * @access public
  96       * @return array
  97       */
  98      public function getFunctions();
  99  
 100      /**
 101       * Load server definition
 102       *
 103       * Used for persistence; loads a construct as returned by {@link getFunctions()}.
 104       *
 105       * @param array $array
 106       * @return void
 107       */
 108      public function loadFunctions($definition);
 109  
 110      /**
 111       * Set server persistence
 112       *
 113       * @todo Determine how to implement this
 114       * @param int $mode
 115       * @return void
 116       */
 117      public function setPersistence($mode);
 118  }


Generated: Fri Nov 28 20:29:05 2014 Cross-referenced by PHPXref 0.7.1