Zend Framework  1.12
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Zend_Service_WindowsAzure_Storage Class Reference

Public Member Functions

 __construct ($host=self::URL_DEV_BLOB, $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)
 Creates a new Zend_Service_WindowsAzure_Storage instance.
 
 setHttpClientChannel ($adapterInstance= 'Zend_Http_Client_Adapter_Proxy')
 Set the HTTP client channel to use.
 
 getHttpClientChannel ()
 Retrieve HTTP client channel.
 
 setRetryPolicy (Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract $retryPolicy=null)
 Set retry policy to use when making requests.
 
 setProxy ($useProxy=false, $proxyUrl= '', $proxyPort=80, $proxyCredentials= '')
 Set proxy.
 
 getAccountName ()
 Returns the Windows Azure account name.
 
 getBaseUrl ()
 Get base URL for creating requests.
 
 setCredentials (Zend_Service_WindowsAzure_Credentials_CredentialsAbstract $credentials)
 Set Zend_Service_WindowsAzure_Credentials_CredentialsAbstract instance.
 
 getCredentials ()
 Get Zend_Service_WindowsAzure_Credentials_CredentialsAbstract instance.
 
 isoDate ($timestamp=null)
 Generate ISO 8601 compliant date string in UTC time zone.
 

Static Public Member Functions

static urlencode ($value)
 URL encode function.
 
static isValidMetadataName ($metadataName= '')
 Is valid metadata name?
 
static createQueryStringFromArray ($queryString)
 Builds a query string from an array of elements.
 

Public Attributes

const URL_DEV_BLOB = "127.0.0.1:10000"
 Development storage URLS.
 
const URL_DEV_QUEUE = "127.0.0.1:10001"
 
const URL_DEV_TABLE = "127.0.0.1:10002"
 
const URL_CLOUD_BLOB = "blob.core.windows.net"
 Live storage URLS.
 
const URL_CLOUD_QUEUE = "queue.core.windows.net"
 
const URL_CLOUD_TABLE = "table.core.windows.net"
 
const RESOURCE_UNKNOWN = "unknown"
 Resource types.
 
const RESOURCE_CONTAINER = "c"
 
const RESOURCE_BLOB = "b"
 
const RESOURCE_TABLE = "t"
 
const RESOURCE_ENTITY = "e"
 
const RESOURCE_QUEUE = "q"
 
const PREFIX_PROPERTIES = "x-ms-prop-"
 HTTP header prefixes.
 
const PREFIX_METADATA = "x-ms-meta-"
 
const PREFIX_STORAGE_HEADER = "x-ms-"
 

Protected Member Functions

 _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)
 Perform request using Zend_Http_Client channel.
 
 _parseResponse (Zend_Http_Response $response=null)
 Parse result from Zend_Http_Response.
 
 _generateMetadataHeaders ($metadata=array())
 Generate metadata headers.
 
 _parseMetadataHeaders ($headers=array())
 Parse metadata headers.
 
 _parseMetadataElement ($element=null)
 Parse metadata XML.
 

Protected Attributes

 $_apiVersion = '2009-09-19'
 
 $_host = ''
 
 $_accountName = ''
 
 $_accountKey = ''
 
 $_usePathStyleUri = false
 
 $_credentials = null
 
 $_retryPolicy = null
 
 $_httpClientChannel = null
 
 $_useProxy = false
 
 $_proxyUrl = ''
 
 $_proxyPort = 80
 
 $_proxyCredentials = ''
 

Constructor & Destructor Documentation

__construct (   $host = self::URL_DEV_BLOB,
  $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 
)

Creates a new Zend_Service_WindowsAzure_Storage instance.

Parameters
string$hostStorage host name
string$accountNameAccount name for Windows Azure
string$accountKeyAccount key for Windows Azure
boolean$usePathStyleUriUse path-style URI's
Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract$retryPolicyRetry policy to use when making requests

Member Function Documentation

_generateMetadataHeaders (   $metadata = array())
protected

Generate metadata headers.

Parameters
array$metadata
Returns
HTTP headers containing metadata
_parseMetadataElement (   $element = null)
protected

Parse metadata XML.

Parameters
SimpleXMLElement$parentElementElement containing the Metadata element.
Returns
array
_parseMetadataHeaders (   $headers = array())
protected

Parse metadata headers.

Parameters
array$headersHTTP headers containing metadata
Returns
array
_parseResponse ( Zend_Http_Response  $response = null)
protected

Parse result from Zend_Http_Response.

Parameters
Zend_Http_Response$responseResponse from HTTP call
Returns
object
Exceptions
Zend_Service_WindowsAzure_Exception
_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 
)
protected

Perform request using Zend_Http_Client channel.

Parameters
string$pathPath
string$queryStringQuery string
string$httpVerbHTTP verb the request will use
array$headersx-ms headers to add
boolean$forTableStorageIs the request for table storage?
mixed$rawDataOptional RAW HTTP data to be sent over the wire
string$resourceTypeResource type
string$requiredPermissionRequired permission
Returns
Zend_Http_Response
static createQueryStringFromArray (   $queryString)
static

Builds a query string from an array of elements.

Parameters
arrayArray of elements
Returns
string Assembled query string
getAccountName ( )

Returns the Windows Azure account name.

Returns
string
getBaseUrl ( )

Get base URL for creating requests.

Returns
string
getCredentials ( )
getHttpClientChannel ( )

Retrieve HTTP client channel.

Returns
Zend_Http_Client_Adapter_Interface
isoDate (   $timestamp = null)

Generate ISO 8601 compliant date string in UTC time zone.

Parameters
int$timestamp
Returns
string
static isValidMetadataName (   $metadataName = '')
static

Is valid metadata name?

Parameters
string$metadataNameMetadata name
Returns
boolean
setHttpClientChannel (   $adapterInstance = 'Zend_Http_Client_Adapter_Proxy')

Set the HTTP client channel to use.

Parameters
Zend_Http_Client_Adapter_Interface | string$adapterInstanceAdapter instance or adapter class name.
setProxy (   $useProxy = false,
  $proxyUrl = '',
  $proxyPort = 80,
  $proxyCredentials = '' 
)

Set proxy.

Parameters
boolean$useProxyUse proxy?
string$proxyUrlProxy URL
int$proxyPortProxy port
string$proxyCredentialsProxy credentials
setRetryPolicy ( Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract  $retryPolicy = null)

Set retry policy to use when making requests.

Parameters
Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract$retryPolicyRetry policy to use when making requests
static urlencode (   $value)
static

URL encode function.

Parameters
string$valueValue to encode
Returns
string Encoded value

Member Data Documentation

$_accountKey = ''
protected
$_accountName = ''
protected
$_apiVersion = '2009-09-19'
protected
$_credentials = null
protected
$_host = ''
protected
$_httpClientChannel = null
protected
$_proxyCredentials = ''
protected
$_proxyPort = 80
protected
$_proxyUrl = ''
protected
$_retryPolicy = null
protected
$_usePathStyleUri = false
protected
$_useProxy = false
protected
const PREFIX_METADATA = "x-ms-meta-"
const PREFIX_PROPERTIES = "x-ms-prop-"

HTTP header prefixes.

const PREFIX_STORAGE_HEADER = "x-ms-"
const RESOURCE_BLOB = "b"
const RESOURCE_CONTAINER = "c"
const RESOURCE_ENTITY = "e"
const RESOURCE_QUEUE = "q"
const RESOURCE_TABLE = "t"
const RESOURCE_UNKNOWN = "unknown"

Resource types.

const URL_CLOUD_BLOB = "blob.core.windows.net"

Live storage URLS.

const URL_CLOUD_QUEUE = "queue.core.windows.net"
const URL_CLOUD_TABLE = "table.core.windows.net"
const URL_DEV_BLOB = "127.0.0.1:10000"

Development storage URLS.

const URL_DEV_QUEUE = "127.0.0.1:10001"
const URL_DEV_TABLE = "127.0.0.1:10002"