Exemplo n.º 1
0
 /**
  * Receive at most $max messages from the specified queue and return the
  * message IDs for messages received.
  *
  * @param  string $queueId
  * @param  int    $max
  * @param  array  $options
  * @return \Zend\Cloud\QueueService\Message[]
  */
 public function receiveMessages($queueId, $max = 1, $options = null)
 {
     try {
         if ($queueId instanceof \Zend\Service\WindowsAzure\Storage\QueueInstance) {
             $queueId = $queueId->Name;
         }
         if (isset($options[self::VISIBILITY_TIMEOUT])) {
             $visibility = $options[self::VISIBILITY_TIMEOUT];
         } else {
             $visibility = self::DEFAULT_TIMEOUT;
         }
         return $this->_makeMessages($this->_storageClient->getMessages($queueId, $max, $visibility, false));
     } catch (WindowsAzureException\ExceptionInterface $e) {
         throw new Exception\RuntimeException('Error on receiving messages: '.$e->getMessage(), $e->getCode(), $e);
     }
 }