Nenhuma Descrição

SetAccountAttributesRequest.php 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace AliyunMNS\Requests;
  3. use AliyunMNS\Constants;
  4. use AliyunMNS\Requests\BaseRequest;
  5. use AliyunMNS\Model\AccountAttributes;
  6. class SetAccountAttributesRequest extends BaseRequest
  7. {
  8. private $attributes;
  9. public function __construct(AccountAttributes $attributes = NULL)
  10. {
  11. parent::__construct('put', '/?accountmeta=true');
  12. if ($attributes == NULL)
  13. {
  14. $attributes = new AccountAttributes;
  15. }
  16. $this->attributes = $attributes;
  17. }
  18. public function getAccountAttributes()
  19. {
  20. return $this->attributes;
  21. }
  22. public function generateBody()
  23. {
  24. $xmlWriter = new \XMLWriter;
  25. $xmlWriter->openMemory();
  26. $xmlWriter->startDocument("1.0", "UTF-8");
  27. $xmlWriter->startElementNS(NULL, "Account", Constants::MNS_XML_NAMESPACE);
  28. $this->attributes->writeXML($xmlWriter);
  29. $xmlWriter->endElement();
  30. $xmlWriter->endDocument();
  31. return $xmlWriter->outputMemory();
  32. }
  33. public function generateQueryString()
  34. {
  35. return NULL;
  36. }
  37. }
  38. ?>