Rest/Server.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Rest
- Subpackage
- Server
- Version
- $Id: Server.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Rest_Server
- Implements
- \Zend_Server_Interface
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties


array $_functions = array()
array()
Details- Type
- array


boolean $_returnResponse = false
Whether or not {@link handle()} should send output or return the response.
<p>Defaults to false</p>false
Details- Type
- boolean


array $magicMethods = array('__construct', '__destruct', '__get', '__set', '__call', '__sleep', '__wakeup', '__isset', '__unset', '__tostring', '__clone', '__set_state')
array('__construct', '__destruct', '__get', '__set', '__call', '__sleep', '__wakeup', '__isset', '__unset', '__tostring', '__clone', '__set_state')
Details- Type
- array
Methods


_callObjectMethod(string $class, array $args) : mixed
Call an instance method of an object
Name | Type | Description |
---|---|---|
$class | string | |
$args | array |
Type | Description |
---|---|
mixed |
Exception | Description |
---|---|
\Zend_Rest_Server_Exception | For invalid class name |


_callStaticMethod(string $class, array $args) : mixed
Call a static class method and return the result
Name | Type | Description |
---|---|---|
$class | string | |
$args | array |
Type | Description |
---|---|
mixed |


_handleScalar(string | int | boolean $value) : string
Handle a single value
Name | Type | Description |
---|---|---|
$value | string | int | boolean | Result value |
Type | Description |
---|---|
string | XML Response |


_handleStruct(array | object $struct) : string
Handle an array or object result
Name | Type | Description |
---|---|---|
$struct | array | object | Result Value |
Type | Description |
---|---|
string | XML Response |


_structValue(mixed $struct, \DOMDocument $dom, \DOMElement $parent) : void
Recursively iterate through a struct
Recursively iterates through an associative array or object's properties to build XML response.
Name | Type | Description |
---|---|---|
$struct | mixed | |
$dom | \DOMDocument | |
$parent | \DOMElement |


addFunction(string $function, string $namespace = '') : void
Implement Zend_Server_Interface::addFunction()
Namespacing is primarily for xmlrpc, but may be used with other implementations to prevent naming collisions.
Name | Type | Description |
---|---|---|
$function | string | Function Name |
$namespace | string | Function namespace (unused) |


fault( $exception = null, int $code = null) : \DOMDocument
Implement Zend_Server_Interface::fault()
Creates XML error response, returning DOMDocument with response.
Name | Type | Description |
---|---|---|
$exception | ||
$code | int | Error Code |
Type | Description |
---|---|
\DOMDocument |


getFunctions() : array
Implement Zend_Server_Interface::getFunctions()
Returns a server definition array as created using Zend_Server_Reflection. Can be used for server introspection, documentation, or persistence.
Type | Description |
---|---|
array | An array of Zend_Server_Reflection_Method's |


getHeaders() : array
Retrieve any HTTP extra headers set by the server
Type | Description |
---|---|
array |


handle(array $request = false) : string | void
Implement Zend_Server_Interface::handle()
Requests may be passed in, or the server may automagically determine the request based on defaults. Dispatches server request to appropriate method and returns a response
Name | Type | Description |
---|---|---|
$request | array |
Type | Description |
---|---|
string | void |
Exception | Description |
---|---|
\Zend_Rest_Server_Exception |


loadFunctions(array $functions) : void
Implement Zend_Server_Interface::loadFunctions()
Used for persistence; loads a construct as returned by getFunctions().
Name | Type | Description |
---|---|---|
$functions | array |
- Todo
- Implement


lowerCase(string $value, string $key) : string
Lowercase a string
Lowercase's a string by reference
Name | Type | Description |
---|---|---|
$value | string | |
$key | string |
Type | Description |
---|---|
string | Lower cased string |


returnResponse(boolean $flag = null) : boolean | \Zend_Rest_Server
Whether or not to return a response
If called without arguments, returns the value of the flag. If called with an argument, sets the flag.
When 'return response' is true, handle() will not send output, but will instead return the response from the dispatched function/method.
Name | Type | Description |
---|---|---|
$flag | boolean |
Type | Description |
---|---|
boolean | \Zend_Rest_Server | Returns Zend_Rest_Server when used to set the flag; returns boolean flag value otherwise. |


setClass(string $classname, string $namespace = '', array $argv = array()) : void
Implement Zend_Server_Interface::setClass()
The individual implementations should probably allow passing a variable number of arguments in, so that developers may define custom runtime arguments to pass to server methods.
Namespacing is primarily for xmlrpc, but could be used for other implementations as well.
Name | Type | Description |
---|---|---|
$classname | string | Class name |
$namespace | string | Class namespace (unused) |
$argv | array | An array of Constructor Arguments |


setEncoding(string $encoding) : \Zend_Rest_Server
Set XML encoding
Name | Type | Description |
---|---|---|
$encoding | string |
Type | Description |
---|---|
\Zend_Rest_Server |