/** * Parses the given array into signed identifiers. * * @param string $publicAccess The container public access. * @param array $parsed The parsed response into array representation. * * @return none */ public static function create($publicAccess, $parsed) { $result = new ContainerAcl(); $result->_publicAccess = $publicAccess; $result->_signedIdentifiers = array(); if (!empty($parsed) && is_array($parsed['SignedIdentifier'])) { $entries = $parsed['SignedIdentifier']; $temp = Utilities::getArray($entries); foreach ($temp as $value) { $startString = urldecode($value['AccessPolicy']['Start']); $expiryString = urldecode($value['AccessPolicy']['Expiry']); $start = Utilities::convertToDateTime($startString); $expiry = Utilities::convertToDateTime($expiryString); $permission = $value['AccessPolicy']['Permission']; $id = $value['Id']; $result->addSignedIdentifier($id, $start, $expiry, $permission); } } return $result; }
public static function getInterestingACL() { $ret = array(); $past = new \DateTime("01/01/2010"); $future = new \DateTime("01/01/2020"); $acl = new ContainerAcl(); array_push($ret, $acl); $acl = new ContainerAcl(); $acl->setPublicAccess(PublicAccessType::NONE); array_push($ret, $acl); $acl = new ContainerAcl(); $acl->setPublicAccess(PublicAccessType::BLOBS_ONLY); array_push($ret, $acl); $acl = new ContainerAcl(); $acl->setPublicAccess(PublicAccessType::CONTAINER_AND_BLOBS); array_push($ret, $acl); $acl = new ContainerAcl(); $acl->addSignedIdentifier('123', $past, $future, 'rw'); array_push($ret, $acl); return $ret; }