OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
Xpress_backup
/
vendor
/
aws
/
aws-sdk-php
/
src
/
Arn
/
S3
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/19/2025 10:07:19 AM
rwxr-xr-x
📄
AccessPointArn.php
709 bytes
05/19/2025 10:07:19 AM
rw-r--r--
📄
BucketArnInterface.php
180 bytes
05/19/2025 10:07:19 AM
rw-r--r--
📄
MultiRegionAccessPointArn.php
733 bytes
05/19/2025 10:07:19 AM
rw-r--r--
📄
OutpostsAccessPointArn.php
3.73 KB
05/19/2025 10:07:19 AM
rw-r--r--
📄
OutpostsArnInterface.php
181 bytes
05/19/2025 10:07:19 AM
rw-r--r--
📄
OutpostsBucketArn.php
2.87 KB
05/19/2025 10:07:19 AM
rw-r--r--
Editing: OutpostsBucketArn.php
Close
<?php namespace Aws\Arn\S3; use Aws\Arn\Arn; use Aws\Arn\Exception\InvalidArnException; use Aws\Arn\ResourceTypeAndIdTrait; /** * This class represents an S3 Outposts bucket ARN, which is in the * following format: * * @internal */ class OutpostsBucketArn extends Arn implements BucketArnInterface, OutpostsArnInterface { use ResourceTypeAndIdTrait; /** * Parses a string into an associative array of components that represent * a OutpostsBucketArn * * @param $string * @return array */ public static function parse($string) { $data = parent::parse($string); $data = self::parseResourceTypeAndId($data); return self::parseOutpostData($data); } public function getBucketName() { return $this->data['bucket_name']; } public function getOutpostId() { return $this->data['outpost_id']; } private static function parseOutpostData(array $data) { $resourceData = preg_split("/[\/:]/", $data['resource_id'], 3); $data['outpost_id'] = isset($resourceData[0]) ? $resourceData[0] : null; $data['bucket_label'] = isset($resourceData[1]) ? $resourceData[1] : null; $data['bucket_name'] = isset($resourceData[2]) ? $resourceData[2] : null; return $data; } /** * * @param array $data */ public static function validate(array $data) { Arn::validate($data); if (($data['service'] !== 's3-outposts')) { throw new InvalidArnException("The 3rd component of an S3 Outposts" . " bucket ARN represents the service and must be 's3-outposts'."); } self::validateRegion($data, 'S3 Outposts bucket ARN'); self::validateAccountId($data, 'S3 Outposts bucket ARN'); if (($data['resource_type'] !== 'outpost')) { throw new InvalidArnException("The 6th component of an S3 Outposts" . " bucket ARN represents the resource type and must be" . " 'outpost'."); } if (!self::isValidHostLabel($data['outpost_id'])) { throw new InvalidArnException("The 7th component of an S3 Outposts" . " bucket ARN is required, represents the outpost ID, and" . " must be a valid host label."); } if ($data['bucket_label'] !== 'bucket') { throw new InvalidArnException("The 8th component of an S3 Outposts" . " bucket ARN must be 'bucket'"); } if (empty($data['bucket_name'])) { throw new InvalidArnException("The 9th component of an S3 Outposts" . " bucket ARN represents the bucket name and must not be empty."); } } }