Class: SpreeCmCommissioner::Media::SignedPathGenerator
- Inherits:
-
Signer
- Object
- Signer
- SpreeCmCommissioner::Media::SignedPathGenerator
show all
- Includes:
- Interactor
- Defined in:
- app/interactors/spree_cm_commissioner/media/signed_path_generator.rb
Instance Method Summary
collapse
Methods inherited from Signer
#distribution_domain, #expiration_time, #key_pair_id, #private_key, #signer, #url
Instance Method Details
#call ⇒ Object
8
9
10
|
# File 'app/interactors/spree_cm_commissioner/media/signed_path_generator.rb', line 8
def call
sign
end
|
#object_path ⇒ Object
32
33
34
|
# File 'app/interactors/spree_cm_commissioner/media/signed_path_generator.rb', line 32
def object_path
File.dirname(s3_object_key)
end
|
#policy ⇒ Object
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'app/interactors/spree_cm_commissioner/media/signed_path_generator.rb', line 19
def policy
{
'Statement' => [
{
'Resource' => "#{distribution_domain}/#{object_path}/*",
'Condition' => {
'DateLessThan' => { 'AWS:EpochTime' => expiration_time }
}
}
]
}
end
|
#sign ⇒ Object
12
13
14
15
16
|
# File 'app/interactors/spree_cm_commissioner/media/signed_path_generator.rb', line 12
def sign
result = signer.signed_url(url, policy: policy.to_json)
context.result = result
end
|