Aucune description

BatchDeleteMessageRequest.php 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace AliyunMNS\Requests;
  3. use AliyunMNS\Constants;
  4. use AliyunMNS\Requests\BaseRequest;
  5. class BatchDeleteMessageRequest extends BaseRequest
  6. {
  7. private $queueName;
  8. private $receiptHandles;
  9. public function __construct($queueName, array $receiptHandles)
  10. {
  11. parent::__construct('delete', 'queues/' . $queueName . '/messages');
  12. $this->queueName = $queueName;
  13. $this->receiptHandles = $receiptHandles;
  14. }
  15. public function getQueueName()
  16. {
  17. return $this->queueName;
  18. }
  19. public function getReceiptHandles()
  20. {
  21. return $this->receiptHandles;
  22. }
  23. public function generateBody()
  24. {
  25. $xmlWriter = new \XMLWriter;
  26. $xmlWriter->openMemory();
  27. $xmlWriter->startDocument("1.0", "UTF-8");
  28. $xmlWriter->startElementNS(NULL, Constants::RECEIPT_HANDLES, Constants::MNS_XML_NAMESPACE);
  29. foreach ($this->receiptHandles as $receiptHandle)
  30. {
  31. $xmlWriter->writeElement(Constants::RECEIPT_HANDLE, $receiptHandle);
  32. }
  33. $xmlWriter->endElement();
  34. $xmlWriter->endDocument();
  35. return $xmlWriter->outputMemory();
  36. }
  37. public function generateQueryString()
  38. {
  39. return NULL;
  40. }
  41. }
  42. ?>