Beispiel #1
0
 protected function createStorageInstance()
 {
     $storageClient = null;
     if (TESTS_ZEND_SERVICE_WINDOWSAZURE_QUEUE_RUNONPROD) {
         $storageClient = new Zend_Service_WindowsAzure_Storage_Queue(TESTS_ZEND_SERVICE_WINDOWSAZURE_QUEUE_HOST_PROD, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_ACCOUNT_PROD, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_KEY_PROD, false, Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract::retryN(10, 250));
     } else {
         $storageClient = new Zend_Service_WindowsAzure_Storage_Queue(TESTS_ZEND_SERVICE_WINDOWSAZURE_QUEUE_HOST_DEV, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_ACCOUNT_DEV, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_KEY_DEV, true, Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract::retryN(10, 250));
     }
     if (TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_USEPROXY) {
         $storageClient->setProxy(TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_USEPROXY, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY_PORT, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY_CREDENTIALS);
     }
     return $storageClient;
 }
 /**
  * Constructor
  *
  * @param  array|Zend_Config $options
  * @return void
  */
 public function __construct($options = array())
 {
     if ($options instanceof Zend_Config) {
         $options = $options->toArray();
     }
     if (!is_array($options)) {
         throw new Zend_Cloud_QueueService_Exception('Invalid options provided');
     }
     if (isset($options[self::MESSAGE_CLASS])) {
         $this->setMessageClass($options[self::MESSAGE_CLASS]);
     }
     if (isset($options[self::MESSAGESET_CLASS])) {
         $this->setMessageSetClass($options[self::MESSAGESET_CLASS]);
     }
     // Build Zend_Service_WindowsAzure_Storage_Blob instance
     if (!isset($options[self::HOST])) {
         $host = self::DEFAULT_HOST;
     } else {
         $host = $options[self::HOST];
     }
     if (!isset($options[self::ACCOUNT_NAME])) {
         throw new Zend_Cloud_Storage_Exception('No Windows Azure account name provided.');
     }
     if (!isset($options[self::ACCOUNT_KEY])) {
         throw new Zend_Cloud_Storage_Exception('No Windows Azure account key provided.');
     }
     try {
         // TODO: support $usePathStyleUri and $retryPolicy
         $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Queue($host, $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]);
         // Parse other options
         if (!empty($options[self::PROXY_HOST])) {
             $proxyHost = $options[self::PROXY_HOST];
             $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080;
             $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : '';
             $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials);
         }
         if (isset($options[self::HTTP_ADAPTER])) {
             $this->_storageClient->setHttpClientChannel($httpAdapter);
         }
     } catch (Zend_Service_WindowsAzure_Exception $e) {
         throw new Zend_Cloud_QueueService_Exception('Error on create: ' . $e->getMessage(), $e->getCode(), $e);
     }
 }