This commit is contained in:
paul 2006-11-24 17:17:29 +00:00
parent 0fcaf7a168
commit cb36413ecb
3 changed files with 57 additions and 34 deletions

View File

@ -14,7 +14,8 @@ require_once "../Archive.php";
/** /**
* XML-RPC interface for Archive. * XML-RPC interface for Archive.
* *
* @author $Author$ * @author Tomas Hlava <th@red2head.com>
* @author Paul Baranowski <paul@paulbaranowski.org>
* @version $Revision$ * @version $Revision$
* @package Campcaster * @package Campcaster
* @subpackage ArchiveServer * @subpackage ArchiveServer
@ -27,11 +28,12 @@ class XR_Archive extends Archive {
/** /**
* Simple ping method - return strtouppered string * Simple ping method - return strtouppered string
* *
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_ping($input) function xr_ping($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -41,11 +43,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_uploadOpen($input) function xr_uploadOpen($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -62,11 +65,12 @@ class XR_Archive extends Archive {
/** /**
* Check state of file upload * Check state of file upload
* *
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_uploadCheck($input) function xr_uploadCheck($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -81,11 +85,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_uploadClose($input) function xr_uploadClose($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -101,10 +106,11 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_strcut $input * @param XMLRPC_strcut $input
* @return XML_RPC_Response
*/ */
function xr_downloadOpen($input) function xr_downloadOpen($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -119,11 +125,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_downloadClose($input) function xr_downloadClose($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -138,11 +145,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_prepareHubInitiatedTransfer($input) function xr_prepareHubInitiatedTransfer($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -163,11 +171,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_listHubInitiatedTransfers($input) function xr_listHubInitiatedTransfers($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }
@ -188,11 +197,12 @@ class XR_Archive extends Archive {
/** /**
* @param XMLRPC_struct $input * @param XML_RPC_Message $input
* @return XML_RPC_Response
*/ */
function xr_setHubInitiatedTransfer($input) function xr_setHubInitiatedTransfer($input)
{ {
list($ok, $r) = $this->_xr_getPars($input); list($ok, $r) = XR_LocStor::xr_getParams($input);
if (!$ok) { if (!$ok) {
return $r; return $r;
} }

View File

@ -1,7 +1,13 @@
<?php <?php
/** /**
* @author $Author$ * @author Tomas Hlava <th@red2head.com>
* @version : $Revision$ * @author Paul Baranowski <paul@paulbaranowski.org>
* @version $Revision$
* @package Campcaster
* @subpackage ArchiveServer
* @copyright 2006 MDLF, Inc.
* @license http://www.gnu.org/licenses/gpl.txt
* @link http://www.campware.org
*/ */
/* ====================================================== specific PHP config */ /* ====================================================== specific PHP config */
@ -28,14 +34,15 @@ ini_set("error_append_string", "</string></value>
header("Content-type: text/xml"); header("Content-type: text/xml");
/* ================================================================= includes */ /* ================================================================= includes */
require_once dirname(__FILE__).'/../conf.php'; require_once(dirname(__FILE__).'/../conf.php');
require_once 'DB.php'; require_once('DB.php');
require_once "XML/RPC/Server.php"; require_once("XML/RPC/Server.php");
require_once 'XR_Archive.php'; require_once('XR_Archive.php');
/* ============================================ setting default error handler */ /* ============================================ setting default error handler */
function errHndl($errno, $errmsg, $filename, $linenum, $vars){ function errHndl($errno, $errmsg, $filename, $linenum, $vars)
switch($errno){ {
switch ($errno) {
case E_WARNING: case E_WARNING:
case E_NOTICE: case E_NOTICE:
case E_USER_WARNING: case E_USER_WARNING:
@ -54,9 +61,9 @@ $old_error_handler = set_error_handler("errHndl", E_ALL);
/* ============================================================= runable code */ /* ============================================================= runable code */
$r = $dbc =& DB::connect($config['dsn'], TRUE); $dbc =& DB::connect($config['dsn'], TRUE);
if (PEAR::isError($r)) { if (PEAR::isError($dbc)) {
trigger_error("DB::connect: ".$r->getMessage()." ".$r->getUserInfo(),E_USER_ERROR); trigger_error("DB::connect: ".$dbc->getMessage()." ".$dbc->getUserInfo(),E_USER_ERROR);
} }
$dbc->setErrorHandling(PEAR_ERROR_RETURN); $dbc->setErrorHandling(PEAR_ERROR_RETURN);
$dbc->setFetchMode(DB_FETCHMODE_ASSOC); $dbc->setFetchMode(DB_FETCHMODE_ASSOC);
@ -116,7 +123,7 @@ $methods = array(
); );
$defs = array(); $defs = array();
foreach($methods as $method=>$description){ foreach($methods as $method => $description){
$defs["archive.$method"] = array( $defs["archive.$method"] = array(
"function" => array(&$archive, "xr_$method"), "function" => array(&$archive, "xr_$method"),
# "function" => "\$GLOBALS['archive']->xr_$method", # "function" => "\$GLOBALS['archive']->xr_$method",
@ -126,6 +133,6 @@ foreach($methods as $method=>$description){
"docstring" => $description "docstring" => $description
); );
} }
$s = new XML_RPC_Server( $defs ); $s = new XML_RPC_Server($defs);
?> ?>

View File

@ -3,9 +3,15 @@ require_once(dirname(__FILE__).'/../LocStor.php');
/** /**
* XML-RPC interface for LocStor class * XML-RPC interface for LocStor class
* @author $Author$
* @version $Revision$
* *
* @author Tomas Hlava <th@red2head.com>
* @author Paul Baranowski <paul@paulbaranowski.org>
* @version $Revision$
* @package Campcaster
* @subpackage StorageServer
* @copyright 2006 MDLF, Inc.
* @license http://www.gnu.org/licenses/gpl.txt
* @link http://www.campware.org
*/ */
class XR_LocStor extends LocStor { class XR_LocStor extends LocStor {
@ -3595,7 +3601,7 @@ class XR_LocStor extends LocStor {
* On success, the second param is an array of values. * On success, the second param is an array of values.
* On failure, the second param is an XML_RPC_Response object. * On failure, the second param is an XML_RPC_Response object.
*/ */
private static function xr_getParams($input) protected static function xr_getParams($input)
{ {
$p = $input->getParam(0); $p = $input->getParam(0);
if (isset($p) && ($p->scalartyp()=="struct")) { if (isset($p) && ($p->scalartyp()=="struct")) {