Class: SpreeCmCommissioner::Media::Signer

Inherits:
Object
  • Object
show all
Includes:
Interactor
Defined in:
app/interactors/spree_cm_commissioner/media/signer.rb

Instance Method Summary collapse

Instance Method Details

#distribution_domainObject



19
20
21
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 19

def distribution_domain
  ENV.fetch('AWS_CF_MEDIA_DOMAIN')
end

#expiration_timeObject



23
24
25
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 23

def expiration_time
  @expiration_time ||= expiration_in_second.seconds.from_now.to_i
end

#key_pair_idObject



28
29
30
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 28

def key_pair_id
  ENV.fetch('AWS_CF_PUBLIC_KEY_ID')
end

#private_keyObject



32
33
34
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 32

def private_key
  ENV.fetch('AWS_CF_PRIVATE_KEY')
end

#signerObject



8
9
10
11
12
13
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 8

def signer
  @signer ||= Aws::CloudFront::UrlSigner.new(
    key_pair_id: key_pair_id,
    private_key: private_key
  )
end

#urlObject



15
16
17
# File 'app/interactors/spree_cm_commissioner/media/signer.rb', line 15

def url
  "#{distribution_domain}/#{s3_object_key}"
end