Class: Aws::S3::Encryption::EncryptHandler Private

Inherits:
Seahorse::Client::Handler
  • Object
show all
Defined in:
lib/aws-sdk-resources/services/s3/encryption/encrypt_handler.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Instance Method Details

#call(context) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/aws-sdk-resources/services/s3/encryption/encrypt_handler.rb', line 9

def call(context)
  cipher = Utils.aes_encryption_cipher(:CBC)
  context[:encryption][:cipher] = cipher
  envelope = {
    'x-amz-key' => encode64(encrypt(context, envelope_key(cipher))),
    'x-amz-iv' => encode64(envelope_iv(cipher)),
    'x-amz-matdesc' => context[:encryption][:materials].description,
  }
  apply_encryption_envelope(context, envelope)
  apply_encryption_cipher(context, cipher)
  @handler.call(context)
end