class Paperclip::SmartDataUriAdapter

Constants

VERSION

Public Class Methods

new(*) click to toggle source
Calls superclass method
# File lib/paperclip/smart_data_uri_adapter.rb, line 37
def initialize(*)
  super

  self.original_filename = "file.#{guessed_file_ext}"
end
replace_original_adapter() click to toggle source
# File lib/paperclip/smart_data_uri_adapter.rb, line 10
def replace_original_adapter
  found = registered_handlers.find &original_adapter?
  Paperclip::DataUriAdapter.register unless found
  data_uri_test = find_and_delete_original_adapter
  Paperclip.io_adapters.register Paperclip::SmartDataUriAdapter, &data_uri_test
end

Private Class Methods

find_and_delete_original_adapter() click to toggle source
# File lib/paperclip/smart_data_uri_adapter.rb, line 19
def find_and_delete_original_adapter
  data_uri_test, * = registered_handlers.find &original_adapter?
  registered_handlers.delete_if &original_adapter?
  data_uri_test
end
original_adapter?() click to toggle source
# File lib/paperclip/smart_data_uri_adapter.rb, line 29
def original_adapter?
  @original_adapter_evaluator ||= ->(args) { test, adapter = args
    adapter == Paperclip::DataUriAdapter
  }
end
registered_handlers() click to toggle source
# File lib/paperclip/smart_data_uri_adapter.rb, line 25
def registered_handlers
  Paperclip.io_adapters.registered_handlers
end

Private Instance Methods

guessed_file_ext() click to toggle source
# File lib/paperclip/smart_data_uri_adapter.rb, line 45
def guessed_file_ext
  MIME::Types[content_type].first.extensions.first || "jpeg"
end