|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 00003 // This file is part of Moodle - http://moodle.org/ 00004 // 00005 // Moodle is free software: you can redistribute it and/or modify 00006 // it under the terms of the GNU General Public License as published by 00007 // the Free Software Foundation, either version 3 of the License, or 00008 // (at your option) any later version. 00009 // 00010 // Moodle is distributed in the hope that it will be useful, 00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 // GNU General Public License for more details. 00014 // 00015 // You should have received a copy of the GNU General Public License 00016 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 00017 00018 require_once 'Zend/XmlRpc/Client.php'; 00019 00023 class webservice_xmlrpc_client extends Zend_XmlRpc_Client { 00024 00025 private $serverurl; 00026 00032 public function __construct($serverurl, $token) { 00033 $this->serverurl = $serverurl; 00034 $serverurl = $serverurl . '?wstoken=' . $token; 00035 parent::__construct($serverurl); 00036 } 00037 00042 public function set_token($token) { 00043 $this->_serverAddress = $this->serverurl . '?wstoken=' . $token; 00044 } 00045 00052 public function call($functionname, $params) { 00053 global $DB, $CFG; 00054 00055 //zend expects 0 based array with numeric indexes 00056 $params = array_values($params); 00057 00058 //traditional Zend soap client call (integrating the token into the URL) 00059 $result = parent::call($functionname, $params); 00060 00061 return $result; 00062 } 00063 00064 }