Class: Paperclip::AbstractAdapter

Inherits:
Object
  • Object
show all
Defined in:
lib/paperclip/io_adapters/abstract_adapter.rb

Constant Summary collapse

OS_RESTRICTED_CHARACTERS =
%r{[/:]}.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(target, options = {}) ⇒ AbstractAdapter

Returns a new instance of AbstractAdapter.



11
12
13
14
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 11

def initialize(target, options = {})
  @target = target
  @options = options
end

Instance Attribute Details

#content_typeObject (readonly)

Returns the value of attribute content_type.



7
8
9
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 7

def content_type
  @content_type
end

#original_filenameObject

Returns the value of attribute original_filename.



7
8
9
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 7

def original_filename
  @original_filename
end

#sizeObject (readonly) Also known as: length

Returns the value of attribute size.



7
8
9
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 7

def size
  @size
end

#tempfileObject (readonly)

Returns the value of attribute tempfile.



7
8
9
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 7

def tempfile
  @tempfile
end

Instance Method Details

#assignment?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 45

def assignment?
  true
end

#fingerprintObject



16
17
18
19
20
21
22
23
24
25
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 16

def fingerprint
  @fingerprint ||= begin
    digest = @options.fetch(:hash_digest).new
    File.open(path, "rb") do |f|
      buf = ""
      digest.update(buf) while f.read(16384, buf)
    end
    digest.hexdigest
  end
end

#inspectObject



31
32
33
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 31

def inspect
  "#{self.class}: #{original_filename}"
end

#nil?Boolean

Returns:

  • (Boolean)


41
42
43
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 41

def nil?
  false
end

#read(length = nil, buffer = nil) ⇒ Object



27
28
29
# File 'lib/paperclip/io_adapters/abstract_adapter.rb', line 27

def read(length = nil, buffer = nil)
  @tempfile.read(length, buffer)
end