Sha256: fcdd9e83145fd63e987d5e18b9a2e5d232298ca86f901c2575a0cf921ed80550
Contents?: true
Size: 1.27 KB
Versions: 1
Compression:
Stored size: 1.27 KB
Contents
require 'thumbo/storages/abstract' begin require 'mogilefs' rescue LoadError raise LoadError.new("Please install gem mogilefs-client") end module Thumbo class Mogilefs < AbstractStorage attr_accessor :klass, :domain, :hosts, :timeout_time attr_accessor :client def initialize opts = {} @klass = opts[:klass] || 'thumbo' @domain = opts[:domain] || 'thumbo' @hosts = opts[:hosts] || ['127.0.0.1:6001'] @timeout_time = opts[:timeout_time] || 2 end def read filename client.get_file_data(filename) rescue MogileFS::Backend::UnknownKeyError raise_file_not_found(filename) end def write filename, blob client.store_content(filename, klass, blob) end def delete filename client.delete(filename) rescue MogileFS::Backend::UnknownKeyError raise_file_not_found(filename) end # raises MogileFS::Backend::UnknownKeyError def paths filename client.get_paths(filename) rescue MogileFS::Backend::UnknownKeyError raise_file_not_found(filename) end def client @client ||= MogileFS::MogileFS.new( :domain => domain, :hosts => hosts, :timeout => timeout_time ) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
godfat-thumbo-0.5.0 | lib/thumbo/storages/mogilefs.rb |