/** * Parses the given array into signed identifiers * * @param string $publicAccess container public access * @param string $etag container etag * @param \DateTime $lastModified last modification date * @param array $parsed parsed response into array * representation * * @return none. */ public static function create($publicAccess, $etag, $lastModified, $parsed) { $result = new GetContainerAclResult(); $result->setEtag($etag); $result->setLastModified($lastModified); $acl = ContainerAcl::create($publicAccess, $parsed); $result->setContainerAcl($acl); return $result; }
/** * @covers WindowsAzure\Blob\Models\GetContainerAclResult::setEtag * @covers WindowsAzure\Blob\Models\GetContainerAclResult::getEtag */ public function testSetEtag() { // Setup $expected = '0x8CAFB82EFF70C46'; $obj = new GetContainerAclResult(); $obj->setEtag($expected); // Test $obj->setEtag($expected); // Assert $this->assertEquals($expected, $obj->getEtag()); }
/** * Gets the access control list (ACL) and any container-level access policies * for the container. * * @param string $container The container name. * @param Models\BlobServiceOptions $options The optional parameters. * * @return Models\GetContainerAclResult * * @see http://msdn.microsoft.com/en-us/library/windowsazure/dd179469.aspx */ public function getContainerAcl($container, $options = null) { Validate::isString($container, 'container'); $method = Resources::HTTP_GET; $headers = array(); $postParams = array(); $queryParams = array(); $path = $container; $statusCode = Resources::STATUS_OK; if (is_null($options)) { $options = new BlobServiceOptions(); } $this->addOptionalQueryParam($queryParams, Resources::QP_TIMEOUT, $options->getTimeout()); $this->addOptionalQueryParam($queryParams, Resources::QP_REST_TYPE, 'container'); $this->addOptionalQueryParam($queryParams, Resources::QP_COMP, 'acl'); $response = $this->send($method, $headers, $queryParams, $postParams, $path, $statusCode); $access = $response->getHeader(Resources::X_MS_BLOB_PUBLIC_ACCESS); $etag = $response->getHeader(Resources::ETAG); $modified = $response->getHeader(Resources::LAST_MODIFIED); $modifiedDate = Utilities::convertToDateTime($modified); $parsed = $this->dataSerializer->unserialize($response->getBody()); return GetContainerAclResult::create($access, $etag, $modifiedDate, $parsed); }