本文整理汇总了PHP中IXR_Server类的典型用法代码示例。如果您正苦于以下问题:PHP IXR_Server类的具体用法?PHP IXR_Server怎么用?PHP IXR_Server使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了IXR_Server类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: RemoteAPI
/**
* Constructor. Register methods and run Server
*/
function dokuwiki_xmlrpc_server()
{
$this->remote = new RemoteAPI();
$this->remote->setDateTransformation(array($this, 'toDate'));
$this->remote->setFileTransformation(array($this, 'toFile'));
parent::__construct();
}
示例2: __construct
/**
* Constructor. Register methods and run Server
*/
public function __construct()
{
$this->remote = new RemoteAPI();
$this->remote->setDateTransformation(array($this, 'toDate'));
$this->remote->setFileTransformation(array($this, 'toFile'));
parent::__construct();
}
示例3: call
function call($methodname, $args)
{
// Make sure it's in an array
if ($args && !is_array($args)) {
$args = array($args);
}
// Over-rides default call method, adds signature check
if (!$this->hasMethod($methodname)) {
return new IXR_Error(-32601, 'server error. requested method "' . $this->message->methodName . '" not specified.');
}
$method = $this->callbacks[$methodname];
$signature = $this->signatures[$methodname];
$returnType = array_shift($signature);
// Check the number of arguments
if (count($args) != count($signature)) {
return new IXR_Error(-32602, 'server error. wrong number of method parameters');
}
// Check the argument types
$ok = true;
$argsbackup = $args;
for ($i = 0, $j = count($args); $i < $j; $i++) {
$arg = array_shift($args);
$type = array_shift($signature);
switch ($type) {
case 'int':
case 'i4':
if (is_array($arg) || !is_int($arg)) {
$ok = false;
}
break;
case 'base64':
case 'string':
if (!is_string($arg)) {
$ok = false;
}
break;
case 'boolean':
if ($arg !== false && $arg !== true) {
$ok = false;
}
break;
case 'float':
case 'double':
if (!is_float($arg)) {
$ok = false;
}
break;
case 'date':
case 'dateTime.iso8601':
if (!is_a($arg, 'IXR_Date')) {
$ok = false;
}
break;
}
if (!$ok) {
return new IXR_Error(-32602, 'server error. invalid method parameters');
}
}
// It passed the test - run the "real" method call
return parent::call($methodname, $argsbackup);
}
示例4: serve
function serve($data = false)
{
parent::serve($data);
}
示例5:
/**
* Register service and construct helper
*/
function __construct()
{
/** @var helper_plugin_blogtng_linkback tools */
$this->tools = plugin_load('helper', 'blogtng_linkback');
parent::__construct(array('pingback.ping' => 'this:ping'));
}
示例6: __construct
/**
* Constructor. Defines the API and starts the server
*
* In the constructor, the API for the server is defined
* by placing method names inside the method array. These
* methods must then be defined later in this class. See
* the format of the method for clues on how to add more.
*/
public function __construct()
{
$this->methods = array('jobs.getMachines' => 'this:jobs_getMachines', 'jobs.getAllPlugins' => 'this:jobs_getAllPlugins', 'jobs.getProfilePlugins' => 'this:jobs_getProfilePlugins', 'jobs.getProfileSettings' => 'this:jobs_getProfileSettings', 'jobs.getPendingProfileIds' => 'this:jobs_getPendingProfileIds', 'jobs.getStatus' => 'this:jobs_getStatus', 'jobs.getCancel' => 'this:jobs_getCancel', 'jobs.getCountRunning' => 'this:jobs_getCountRunning', 'jobs.getPluginsBySeverity' => 'this:jobs_getPluginsBySeverity', 'jobs.getPluginsByFamily' => 'this:jobs_getPluginsByFamily', 'jobs.getSpecialProfileItems' => 'this:jobs_getSpecialProfileItems', 'jobs.setResetCancel' => 'this:jobs_setResetCancel', 'jobs.setProgress' => 'this:jobs_setProgress', 'jobs.setStatus' => 'this:jobs_setStatus', 'jobs.setFinishedDate' => 'this:jobs_setFinishedDate', 'jobs.saveReport' => 'this:jobs_saveReport', 'jobs.emailResults' => 'this:jobs_emailResults', 'jobs.addExemption' => 'this:jobs_addExemption');
parent::__construct($this->methods);
}
示例7: PingbackServer
/**
* Register service and construct helper
*/
function PingbackServer()
{
$this->tools =& plugin_load('helper', 'blogtng_linkback');
parent::__construct(array('pingback.ping' => 'this:ping'));
}