Class: Minidoc::Grid
- Inherits:
-
Object
- Object
- Minidoc::Grid
- Defined in:
- lib/minidoc/grid.rb
Instance Method Summary collapse
- #delete(id) ⇒ Object
- #get(id) ⇒ Object
- #get_json(id) ⇒ Object
-
#initialize(database) ⇒ Grid
constructor
A new instance of Grid.
- #put(str, filename = SecureRandom.uuid) ⇒ Object
Constructor Details
#initialize(database) ⇒ Grid
Returns a new instance of Grid.
2 3 4 |
# File 'lib/minidoc/grid.rb', line 2 def initialize(database) @bucket = Mongo::Grid::FSBucket.new(database) end |
Instance Method Details
#delete(id) ⇒ Object
23 24 25 26 |
# File 'lib/minidoc/grid.rb', line 23 def delete(id) id = BSON::ObjectId(id.to_s) bucket.delete(id) end |
#get(id) ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/minidoc/grid.rb', line 10 def get(id) id = BSON::ObjectId(id.to_s) io = StringIO.new bucket.download_to_stream(id, io) io.rewind io end |
#get_json(id) ⇒ Object
18 19 20 21 |
# File 'lib/minidoc/grid.rb', line 18 def get_json(id) raw_data = get(id).read JSON.parse(raw_data) end |
#put(str, filename = SecureRandom.uuid) ⇒ Object
6 7 8 |
# File 'lib/minidoc/grid.rb', line 6 def put(str, filename = SecureRandom.uuid) bucket.upload_from_stream(filename, StringIO.new(str)) end |