module ImagizerEngine::Mount
Public Instance Methods
mount_imagizer_engine(column, original_url_method)
click to toggle source
# File lib/imagizer_engine/mount.rb, line 7 def mount_imagizer_engine(column, original_url_method) self.send(:define_method, "#{column}_url") do |version=nil| raise NoMethodError, "there's no instance method called #{original_url_method}" unless respond_to?(original_url_method) ImagizerEngine::Url.new.to_url(self.send(original_url_method), version) end self.send(:define_method, "#{column}_metadata_url") do || raise NoMethodError, "there's no instance method called #{original_url_method}" unless respond_to?(original_url_method) ImagizerEngine::Url.new.to_url(self.send(original_url_method), nil, true) end self.send(:define_method, "#{column}_metadata") do || raise NoMethodError, "there's no instance method called #{original_url_method}" unless respond_to?(original_url_method) url = send("#{column}_metadata_url") response = Net::HTTP.get(URI(url)) JSON.parse(response).with_indifferent_access end end