![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /home/fdshops/public_html/vendor/aws/aws-sdk-php/src/S3/Crypto/ |
<?php namespace Aws\S3\Crypto; use \Aws\Crypto\MetadataStrategyInterface; use \Aws\Crypto\MetadataEnvelope; class HeadersMetadataStrategy implements MetadataStrategyInterface { /** * Places the information in the MetadataEnvelope in to the metadata for * the PutObject request of the encrypted object. * * @param MetadataEnvelope $envelope Encryption data to save according to * the strategy. * @param array $args Arguments for PutObject that can be manipulated to * store strategy related information. * * @return array Updated arguments for PutObject. */ public function save(MetadataEnvelope $envelope, array $args) { foreach ($envelope as $header=>$value) { $args['Metadata'][$header] = $value; } return $args; } /** * Generates a MetadataEnvelope according to the metadata headers from the * GetObject result. * * @param array $args Arguments from Command and Result that contains * S3 Object information, relevant headers, and command * configuration. * * @return MetadataEnvelope */ public function load(array $args) { $envelope = new MetadataEnvelope(); $constantValues = MetadataEnvelope::getConstantValues(); foreach ($constantValues as $constant) { if (!empty($args['Metadata'][$constant])) { $envelope[$constant] = $args['Metadata'][$constant]; } } return $envelope; } }