Class: CarrierWaveDirect::Policies::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/carrierwave_direct/policies/base.rb

Direct Known Subclasses

Aws4HmacSha256, AwsBase64Sha1

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(uploader) ⇒ Base

Returns a new instance of Base.



5
6
7
# File 'lib/carrierwave_direct/policies/base.rb', line 5

def initialize(uploader)
  @uploader = uploader
end

Instance Attribute Details

#uploaderObject (readonly)

Returns the value of attribute uploader.



4
5
6
# File 'lib/carrierwave_direct/policies/base.rb', line 4

def uploader
  @uploader
end

Instance Method Details

#clear!Object



16
17
18
# File 'lib/carrierwave_direct/policies/base.rb', line 16

def clear!
  @policy = nil
end

#policy(options = {}, &block) ⇒ Object



9
10
11
12
13
14
# File 'lib/carrierwave_direct/policies/base.rb', line 9

def policy(options = {}, &block)
  options[:expiration] ||= uploader.upload_expiration
  options[:min_file_size] ||= uploader.min_file_size
  options[:max_file_size] ||= uploader.max_file_size
  @policy ||= generate(options, &block)
end