本文整理汇总了PHP中Zend_Service_WindowsAzure_Storage_Table类的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Service_WindowsAzure_Storage_Table类的具体用法?PHP Zend_Service_WindowsAzure_Storage_Table怎么用?PHP Zend_Service_WindowsAzure_Storage_Table使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Zend_Service_WindowsAzure_Storage_Table类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: createStorageInstance
protected function createStorageInstance()
{
$storageClient = null;
if (TESTS_ZEND_SERVICE_WINDOWSAZURE_SESSIONHANDLER_RUNONPROD) {
$storageClient = new Zend_Service_WindowsAzure_Storage_Table(TESTS_ZEND_SERVICE_WINDOWSAZURE_TABLE_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_Table(TESTS_ZEND_SERVICE_WINDOWSAZURE_TABLE_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;
}
示例2: gc
/**
* Garbage collector
*
* @param int $lifeTime Session maximal lifetime
* @see session.gc_divisor 100
* @see session.gc_maxlifetime 1440
* @see session.gc_probability 1
* @usage Execution rate 1/100 (session.gc_probability/session.gc_divisor)
* @return boolean
*/
public function gc($lifeTime)
{
if ($this->_storageType == self::STORAGE_TYPE_TABLE) {
// In table storage
try {
$result = $this->_storage->retrieveEntities($this->_sessionContainer, 'PartitionKey eq \'' . $this->_sessionContainerPartition . '\' and sessionExpires lt ' . (time() - $lifeTime));
foreach ($result as $sessionRecord) {
$this->_storage->deleteEntity($this->_sessionContainer, $sessionRecord);
}
return true;
} catch (Zend_Service_WindowsAzure_exception $ex) {
return false;
}
} else {
if ($this->_storageType == self::STORAGE_TYPE_BLOB) {
// In blob storage
try {
$result = $this->_storage->listBlobs($this->_sessionContainer, $this->_sessionContainerPartition, '', null, null, 'metadata');
foreach ($result as $sessionRecord) {
if ($sessionRecord->Metadata['sessionexpires'] < time() - $lifeTime) {
$this->_storage->deleteBlob($this->_sessionContainer, $sessionRecord->Name);
}
}
return true;
} catch (Zend_Service_WindowsAzure_exception $ex) {
return false;
}
}
}
}
示例3: gc
/**
* Garbage collector
*
* @param int $lifeTime Session maximal lifetime
* @see session.gc_divisor 100
* @see session.gc_maxlifetime 1440
* @see session.gc_probability 1
* @usage Execution rate 1/100 (session.gc_probability/session.gc_divisor)
* @return boolean
*/
public function gc($lifeTime)
{
try {
$result = $this->_tableStorage->retrieveEntities($this->_sessionTable, 'PartitionKey eq \'' . $this->_sessionTablePartition . '\' and sessionExpires lt ' . (time() - $lifeTime));
foreach ($result as $sessionRecord) {
$this->_tableStorage->deleteEntity($this->_sessionTable, $sessionRecord);
}
return true;
} catch (Zend_Service_WindowsAzure_exception $ex) {
return false;
}
}
示例4: query
/**
* Query for documents stored in the document service. If a string is passed in
* $query, the query string will be passed directly to the service.
*
* @param string $collectionName Collection name
* @param string|Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query $query
* @param array $options
* @return array Zend_Cloud_DocumentService_DocumentSet
*/
public function query($collectionName, $query, $options = null)
{
try {
if ($query instanceof Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query) {
$entities = $this->_storageClient->retrieveEntities($query->assemble());
} else {
$entities = $this->_storageClient->retrieveEntities($collectionName, $query);
}
$documentClass = $this->getDocumentClass();
$resultSet = array();
foreach ($entities as $entity) {
$resultSet[] = new $documentClass($this->_resolveAttributes($entity), array($entity->getPartitionKey(), $entity->getRowKey()));
}
} catch (Zend_Service_WindowsAzure_Exception $e) {
throw new Zend_Cloud_DocumentService_Exception('Error on document query: ' . $e->getMessage(), $e->getCode(), $e);
}
$setClass = $this->getDocumentSetClass();
return new $setClass($resultSet);
}