示例#1
0
 /**
  * Creates a new Zend_Service_WindowsAzure_Storage_Table instance
  *
  * @param string $host Storage host name
  * @param string $accountName Account name for Windows Azure
  * @param string $accountKey Account key for Windows Azure
  * @param boolean $usePathStyleUri Use path-style URI's
  * @param Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract $retryPolicy Retry policy to use when making requests
  */
 public function __construct($host = Zend_Service_WindowsAzure_Storage::URL_DEV_TABLE, $accountName = Zend_Service_WindowsAzure_Credentials_CredentialsAbstract::DEVSTORE_ACCOUNT, $accountKey = Zend_Service_WindowsAzure_Credentials_CredentialsAbstract::DEVSTORE_KEY, $usePathStyleUri = false, Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract $retryPolicy = null)
 {
     parent::__construct($host, $accountName, $accountKey, $usePathStyleUri, $retryPolicy);
     // Always use SharedKeyLite authentication
     $this->_credentials = new Zend_Service_WindowsAzure_Credentials_SharedKeyLite($accountName, $accountKey, $this->_usePathStyleUri);
     // API version
     $this->_apiVersion = '2009-04-14';
 }
示例#2
0
 /**
  * Commit current batch
  * 
  * @return Zend_Http_Response
  * @throws Zend_Service_WindowsAzure_Exception
  */
 public function commit()
 {
     // Perform batch
     $response = $this->_storageClient->performBatch($this->_operations, $this->_forTableStorage, $this->_isSingleSelect);
     // Dispose
     $this->_clean();
     // Parse response
     $errors = null;
     preg_match_all('/<message (.*)>(.*)<\\/message>/', $response->getBody(), $errors);
     // Error?
     if (count($errors[2]) > 0) {
         throw new Zend_Service_WindowsAzure_Exception('An error has occured while committing a batch: ' . $errors[2][0]);
     }
     // Return
     return $response;
 }
示例#3
0
 /**
  * Perform request using Zend_Http_Client channel
  *
  * @param string $path Path
  * @param string $queryString Query string
  * @param string $httpVerb HTTP verb the request will use
  * @param array $headers x-ms headers to add
  * @param boolean $forTableStorage Is the request for table storage?
  * @param mixed $rawData Optional RAW HTTP data to be sent over the wire
  * @param string $resourceType Resource type
  * @param string $requiredPermission Required permission
  * @return Zend_Http_Response
  */
 protected function _performRequest($path = '/', $queryString = '', $httpVerb = Zend_Http_Client::GET, $headers = array(), $forTableStorage = false, $rawData = null, $resourceType = Zend_Service_WindowsAzure_Storage::RESOURCE_UNKNOWN, $requiredPermission = Zend_Service_WindowsAzure_Credentials_CredentialsAbstract::PERMISSION_READ)
 {
     // Add headers
     $headers['DataServiceVersion'] = '1.0;NetFx';
     $headers['MaxDataServiceVersion'] = '1.0;NetFx';
     // Perform request
     return parent::_performRequest($path, $queryString, $httpVerb, $headers, $forTableStorage, $rawData, $resourceType, $requiredPermission);
 }