Class: AlchemyCloudinary::DragonflyDataStore

Inherits:
Object
  • Object
show all
Defined in:
lib/alchemy_cloudinary/dragonfly_data_store.rb

Instance Method Summary collapse

Instance Method Details

#destroy(uid) ⇒ Object



19
20
21
# File 'lib/alchemy_cloudinary/dragonfly_data_store.rb', line 19

def destroy(uid)
  Cloudinary::Uploader.destroy public_id(uid)
end

#read(uid) ⇒ Object



14
15
16
17
# File 'lib/alchemy_cloudinary/dragonfly_data_store.rb', line 14

def read(uid)
  url = Cloudinary::Utils.cloudinary_url(public_id(uid), format: ext(uid) || 'jpg')
  [Cloudinary::Downloader.download(url), {'name' => name(uid)}]
end

#url_for(uid, options = {}) ⇒ Object



23
24
25
26
# File 'lib/alchemy_cloudinary/dragonfly_data_store.rb', line 23

def url_for(uid, options = {})
  options = {format: ext(uid)}.merge(options)
  Cloudinary::Utils.cloudinary_url(public_id(uid), options)
end

#write(content, opts = {}) ⇒ Object



7
8
9
10
11
12
# File 'lib/alchemy_cloudinary/dragonfly_data_store.rb', line 7

def write(content, opts = {})
  result = Cloudinary::Uploader.upload(content.file, {
    public_id: name(content.name)
  }.merge(opts))
  "#{result['public_id']}.#{result['format']}"
end