[ Index ]

PHP Cross Reference of moodle-2.8

title

Body

[close]

/lib/zend/Zend/Service/DeveloperGarden/ -> BaseUserService.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_Service
  17   * @subpackage DeveloperGarden
  18   * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
  19   * @license    http://framework.zend.com/license/new-bsd     New BSD License
  20   * @version    $Id$
  21   */
  22  
  23  /**
  24   * @see Zend_Service_DeveloperGarden_Client_ClientAbstract
  25   */
  26  require_once 'Zend/Service/DeveloperGarden/Client/ClientAbstract.php';
  27  
  28  /**
  29   * @see Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
  30   */
  31  require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/GetQuotaInformationResponse.php';
  32  
  33  /**
  34   * @see Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
  35   */
  36  require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/ChangeQuotaPoolResponse.php';
  37  
  38  /**
  39   * @see Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse
  40   */
  41  require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/GetAccountBalanceResponse.php';
  42  
  43  /**
  44   * @see Zend_Service_DeveloperGarden_BaseUserService_AccountBalance
  45   */
  46  require_once 'Zend/Service/DeveloperGarden/BaseUserService/AccountBalance.php';
  47  
  48  /**
  49   * @see Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation
  50   */
  51  require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/GetQuotaInformation.php';
  52  
  53  /**
  54   * @see Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool
  55   */
  56  require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/ChangeQuotaPool.php';
  57  
  58  /**
  59   * @see Zend_Service_DeveloperGarden_Request_BaseUserService_GetAccountBalance
  60   */
  61  require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/GetAccountBalance.php';
  62  
  63  /**
  64   * @category   Zend
  65   * @package    Zend_Service
  66   * @subpackage DeveloperGarden
  67   * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
  68   * @author     Marco Kaiser
  69   * @license    http://framework.zend.com/license/new-bsd     New BSD License
  70   */
  71  class Zend_Service_DeveloperGarden_BaseUserService extends Zend_Service_DeveloperGarden_Client_ClientAbstract
  72  {
  73      /**
  74       * wsdl file
  75       *
  76       * @var string
  77       */
  78      protected $_wsdlFile = 'https://gateway.developer.telekom.com/p3gw-mod-odg-admin/services/ODGBaseUserService?wsdl';
  79  
  80      /**
  81       * wsdl file local
  82       *
  83       * @var string
  84       */
  85      protected $_wsdlFileLocal = 'Wsdl/ODGBaseUserService.wsdl';
  86  
  87      /**
  88       * Response, Request Classmapping
  89       *
  90       * @var array
  91       *
  92       */
  93      protected $_classMap = array(
  94          'getQuotaInformationResponse' =>
  95              'Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse',
  96          'changeQuotaPoolResponse' =>
  97              'Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse',
  98          'getAccountBalanceResponse' =>
  99              'Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse',
 100          'AccountBalance' =>
 101              'Zend_Service_DeveloperGarden_BaseUserService_AccountBalance',
 102      );
 103  
 104      /**
 105       * array with all QuotaModuleIds
 106       *
 107       * @var array
 108       */
 109      protected $_moduleIds = array(
 110          'SmsProduction'            => 'SmsProduction',
 111          'SmsSandbox'               => 'SmsSandbox',
 112          'VoiceCallProduction'      => 'VoiceButlerProduction',
 113          'VoiceCallSandbox'         => 'VoiceButlerSandbox',
 114          'ConferenceCallProduction' => 'CCSProduction',
 115          'ConferenceCallSandbox'    => 'CCSSandbox',
 116          'LocalSearchProduction'    => 'localsearchProduction',
 117          'LocalSearchSandbox'       => 'localsearchSandbox',
 118          'IPLocationProduction'     => 'IPLocationProduction',
 119          'IPLocationSandbox'        => 'IPLocationSandbox'
 120      );
 121  
 122      /**
 123       * returns an array with all possible ModuleIDs
 124       *
 125       * @return array
 126       */
 127      public function getModuleIds()
 128      {
 129          return $this->_moduleIds;
 130      }
 131  
 132      /**
 133       * checks the moduleId and throws exception if not valid
 134       *
 135       * @param string $moduleId
 136       * @throws Zend_Service_DeveloperGarden_Client_Exception
 137       * @return void
 138       */
 139      protected function _checkModuleId($moduleId)
 140      {
 141          if (!in_array($moduleId, $this->_moduleIds)) {
 142              require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
 143              throw new Zend_Service_DeveloperGarden_Client_Exception('moduleId not valid');
 144          }
 145      }
 146  
 147      /**
 148       * returns the correct module string
 149       *
 150       * @param string $module
 151       * @param integer $environment
 152       * @return string
 153       */
 154      protected function _buildModuleString($module, $environment)
 155      {
 156          $moduleString = $module;
 157          switch($environment) {
 158              case self::ENV_PRODUCTION :
 159                  $moduleString .= 'Production';
 160                  break;
 161              case self::ENV_SANDBOX :
 162                  $moduleString .= 'Sandbox';
 163                  break;
 164              default:
 165                  require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
 166                  throw new Zend_Service_DeveloperGarden_Client_Exception(
 167                      'Not a valid environment supplied.'
 168                  );
 169          }
 170  
 171          if (!in_array($moduleString, $this->_moduleIds)) {
 172              require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
 173              throw new Zend_Service_DeveloperGarden_Client_Exception(
 174                  'Not a valid module name supplied.'
 175              );
 176          }
 177  
 178          return $moduleString;
 179      }
 180  
 181      /**
 182       * returns the request object with the specific moduleId
 183       *
 184       * @param string $moduleId
 185       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 186       */
 187      protected function _getRequestModule($moduleId)
 188      {
 189          return new Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation(
 190              $moduleId
 191          );
 192      }
 193  
 194      /**
 195       * returns the request object with the specific moduleId and new quotaMax value
 196       *
 197       * @param string $moduleId
 198       * @param integer $quotaMax
 199       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 200       */
 201      protected function _getChangeRequestModule($moduleId, $quotaMax)
 202      {
 203          return new Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool(
 204              $moduleId,
 205              $quotaMax
 206          );
 207      }
 208  
 209      /**
 210       * returns the Quota Information for SMS Service
 211       *
 212       * @param int $environment
 213       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 214       */
 215      public function getSmsQuotaInformation($environment = self::ENV_PRODUCTION)
 216      {
 217          self::checkEnvironment($environment);
 218          $moduleId = $this->_buildModuleString('Sms', $environment);
 219          $request  = $this->_getRequestModule($moduleId);
 220          return $this->getQuotaInformation($request);
 221      }
 222  
 223      /**
 224       * returns the Quota Information for VoiceCall Service
 225       *
 226       * @param int $environment
 227       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 228       */
 229      public function getVoiceCallQuotaInformation($environment = self::ENV_PRODUCTION)
 230      {
 231          self::checkEnvironment($environment);
 232          $moduleId = $this->_buildModuleString('VoiceButler', $environment);
 233          $request  = $this->_getRequestModule($moduleId);
 234          return $this->getQuotaInformation($request);
 235      }
 236  
 237      /**
 238       * returns the Quota Information for SMS ConferenceCall
 239       *
 240       * @param int $environment
 241       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 242       */
 243      public function getConfernceCallQuotaInformation($environment = self::ENV_PRODUCTION)
 244      {
 245          self::checkEnvironment($environment);
 246          $moduleId = $this->_buildModuleString('CCS', $environment);
 247          $request  = $this->_getRequestModule($moduleId);
 248          return $this->getQuotaInformation($request);
 249      }
 250  
 251      /**
 252       * returns the Quota Information for LocaleSearch Service
 253       *
 254       * @param int $environment
 255       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 256       */
 257      public function getLocalSearchQuotaInformation($environment = self::ENV_PRODUCTION)
 258      {
 259          self::checkEnvironment($environment);
 260          $moduleId = $this->_buildModuleString('localsearch', $environment);
 261          $request  = $this->_getRequestModule($moduleId);
 262          return $this->getQuotaInformation($request);
 263      }
 264  
 265      /**
 266       * returns the Quota Information for IPLocation Service
 267       *
 268       * @param int $environment
 269       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 270       */
 271      public function getIPLocationQuotaInformation($environment = self::ENV_PRODUCTION)
 272      {
 273          self::checkEnvironment($environment);
 274          $moduleId = $this->_buildModuleString('IPLocation', $environment);
 275          $request  = $this->_getRequestModule($moduleId);
 276          return $this->getQuotaInformation($request);
 277      }
 278  
 279      /**
 280       * returns the quota information
 281       *
 282       * @param Zend_Service_DeveloperGarden_Request_BaseUserService $request
 283       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
 284       */
 285      public function getQuotaInformation(
 286          Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation $request
 287      ) {
 288          $this->_checkModuleId($request->getModuleId());
 289          return $this->getSoapClient()
 290                      ->getQuotaInformation($request)
 291                      ->parse();
 292      }
 293  
 294      /**
 295       * sets new user quota for the sms service
 296       *
 297       * @param integer $quotaMax
 298       * @param integer $environment
 299       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 300       */
 301      public function changeSmsQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
 302      {
 303          self::checkEnvironment($environment);
 304          $moduleId = $this->_buildModuleString('Sms', $environment);
 305          $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
 306          return $this->changeQuotaPool($request);
 307      }
 308  
 309      /**
 310       * sets new user quota for the voice call service
 311       *
 312       * @param integer $quotaMax
 313       * @param integer $environment
 314       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 315       */
 316      public function changeVoiceCallQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
 317      {
 318          self::checkEnvironment($environment);
 319          $moduleId = $this->_buildModuleString('VoiceButler', $environment);
 320          $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
 321          return $this->changeQuotaPool($request);
 322      }
 323  
 324      /**
 325       * sets new user quota for the IPLocation service
 326       *
 327       * @param integer $quotaMax
 328       * @param integer $environment
 329       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 330       */
 331      public function changeIPLocationQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
 332      {
 333          self::checkEnvironment($environment);
 334          $moduleId = $this->_buildModuleString('IPLocation', $environment);
 335          $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
 336          return $this->changeQuotaPool($request);
 337      }
 338  
 339      /**
 340       * sets new user quota for the Conference Call service
 341       *
 342       * @param integer $quotaMax
 343       * @param integer $environment
 344       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 345       */
 346      public function changeConferenceCallQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
 347      {
 348          self::checkEnvironment($environment);
 349          $moduleId = $this->_buildModuleString('CCS', $environment);
 350          $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
 351          return $this->changeQuotaPool($request);
 352      }
 353  
 354      /**
 355       * sets new user quota for the Local Search service
 356       *
 357       * @param integer $quotaMax
 358       * @param integer $environment
 359       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 360       */
 361      public function changeLocalSearchQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
 362      {
 363          self::checkEnvironment($environment);
 364          $moduleId = $this->_buildModuleString('localsearch', $environment);
 365          $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
 366          return $this->changeQuotaPool($request);
 367      }
 368  
 369      /**
 370       * set new quota values for the defined module
 371       *
 372       * @param Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool $request
 373       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
 374       */
 375      public function changeQuotaPool(
 376          Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool $request
 377      ) {
 378          $this->_checkModuleId($request->getModuleId());
 379          return $this->getSoapClient()
 380                      ->changeQuotaPool($request)
 381                      ->parse();
 382      }
 383  
 384      /**
 385       * get the result for a list of accounts
 386       *
 387       * @param array $accounts
 388       * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse
 389       */
 390      public function getAccountBalance(array $accounts = array())
 391      {
 392          $request = new Zend_Service_DeveloperGarden_Request_BaseUserService_GetAccountBalance(
 393              $accounts
 394          );
 395          return $this->getSoapClient()
 396                      ->getAccountBalance($request)
 397                      ->parse();
 398      }
 399  }


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