Sha256: d3828e7b036890c9b8c1715c5c71e9e9a4ed7287f923bf377bac0cafc8d60ff8

Contents?: true

Size: 793 Bytes

Versions: 8

Compression:

Stored size: 793 Bytes

Contents

module Mongoo
  module GridFs

    class File
      def initialize(container_hash, db_lambda)
        @db_lambda = db_lambda
        @container_hash = container_hash
      end

      def grid
        @grid ||= Mongo::Grid.new(@db_lambda.call)
      end

      def put(*args)
        @container_hash["_id"] = grid.put(*args)
      end

      def delete(*args)
        if file_id = @container_hash["_id"]
          args ||= []
          args.unshift file_id
          res = grid.delete(*args)
          @container_hash.clear
          res
        end
      end

      def get(*args)
        if file_id = @container_hash["_id"]
          args ||= []
          args.unshift file_id
          if io = grid.get(*args)
            io.read
          end
        end
      end
    end # File

  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
mongoo-0.5.7 lib/mongoo/grid_fs/file.rb
mongoo-0.5.6 lib/mongoo/grid_fs/file.rb
mongoo-0.5.5 lib/mongoo/grid_fs/file.rb
mongoo-0.5.4 lib/mongoo/grid_fs/file.rb
mongoo-0.5.3 lib/mongoo/grid_fs/file.rb
mongoo-0.5.2 lib/mongoo/grid_fs/file.rb
mongoo-0.5.1 lib/mongoo/grid_fs/file.rb
mongoo-0.5.0 lib/mongoo/grid_fs/file.rb