class Medusa::Storage::Base

Public Class Methods

new(adapter) click to toggle source
# File lib/medusa/storage/base.rb, line 7
def initialize(adapter)
  @adap = adapter

  # verify adapter conforms to this class's methods
  public_methods(false).each do |method|
    if !@adap.respond_to?(method.to_sym)
      raise "Storage adapter must support method #{method}"
    end
  end
end

Public Instance Methods

[](key) click to toggle source
# File lib/medusa/storage/base.rb, line 18
def [](key)
  @adap[key]
  rescue
    raise RetrievalError
end
[]=(key, value) click to toggle source
# File lib/medusa/storage/base.rb, line 24
def []=(key, value)
  @adap[key] = value
  rescue
    raise InsertionError
end
clear() click to toggle source
# File lib/medusa/storage/base.rb, line 36
def clear
  @adap.clear
  rescue
    raise GenericError
end
close() click to toggle source
# File lib/medusa/storage/base.rb, line 54
def close
  @adap.close
  rescue
    raise CloseError
end
delete(key) click to toggle source
# File lib/medusa/storage/base.rb, line 30
def delete(key)
  @adap.delete(key)
  rescue
    raise DeletionError
end
each() { |k, v| ... } click to toggle source
# File lib/medusa/storage/base.rb, line 42
def each
  @adap.each { |k, v| yield k, v }
  rescue
    raise GenericError
end
has_key?(key) click to toggle source
# File lib/medusa/storage/base.rb, line 72
def has_key?(key)
  @adap.has_key?(key)
  rescue
    raise GenericError
end
keys() click to toggle source
# File lib/medusa/storage/base.rb, line 66
def keys
  @adap.keys
  rescue
    raise GenericError
end
merge!(hash) click to toggle source
# File lib/medusa/storage/base.rb, line 48
def merge!(hash)
  @adap.merge!(hash)
  rescue
    raise GenericError
end
size() click to toggle source
# File lib/medusa/storage/base.rb, line 60
def size
  @adap.size
  rescue
    raise GenericError
end