Class: Shrine::Storage::Memory

Inherits:
Object
  • Object
show all
Defined in:
lib/shrine/storage/memory.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(store = {}) ⇒ Memory

Returns a new instance of Memory.



9
10
11
# File 'lib/shrine/storage/memory.rb', line 9

def initialize(store = {})
  @store = store
end

Instance Attribute Details

#storeObject (readonly)

Returns the value of attribute store.



7
8
9
# File 'lib/shrine/storage/memory.rb', line 7

def store
  @store
end

Instance Method Details

#clear!Object



33
34
35
# File 'lib/shrine/storage/memory.rb', line 33

def clear!
  store.clear
end

#delete(id) ⇒ Object



25
26
27
# File 'lib/shrine/storage/memory.rb', line 25

def delete(id)
  store.delete(id)
end

#exists?(id) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/shrine/storage/memory.rb', line 21

def exists?(id)
  store.key?(id)
end

#open(id) ⇒ Object



17
18
19
# File 'lib/shrine/storage/memory.rb', line 17

def open(id, *)
  StringIO.new(store.fetch(id))
end

#upload(io, id) ⇒ Object



13
14
15
# File 'lib/shrine/storage/memory.rb', line 13

def upload(io, id, *)
  store[id] = io.read
end

#url(id, **options) ⇒ Object



29
30
31
# File 'lib/shrine/storage/memory.rb', line 29

def url(id, **options)
  "memory://#{id}"
end