Parent

Included Modules

Files

Class/Module Index [+]

Quicksearch

Moneta::Adapters::Riak

Riak backend @api public @author Potapov Sergey (aka Blake)

Attributes

backend[R]

Public Class Methods

new(options = {}) click to toggle source

@param [Hash] options @option options [String] :bucket ('moneta') Bucket name @option options [String] :content_type ('application/octet-stream') Default content type @option options All other options passed to `Riak::Client#new` @option options [::Riak::Client] :backend Use existing backend instance

# File lib/moneta/adapters/riak.rb, line 18
def initialize(options = {})
  bucket = options.delete(:bucket) || 'moneta'
  @content_type = options.delete(:content_type) || 'application/octet-stream'
  @backend = options[:backend] || ::Riak::Client.new(options)
  @bucket = @backend.bucket(bucket)
end

Public Instance Methods

clear(options = {}) click to toggle source

(see Proxy#clear)

# File lib/moneta/adapters/riak.rb, line 54
def clear(options = {})
  @bucket.keys do |keys|
    keys.each{ |key| @bucket.delete(key) }
  end
  self
end
delete(key, options = {}) click to toggle source

(see Proxy#delete)

# File lib/moneta/adapters/riak.rb, line 38
def delete(key, options = {})
  value = load(key, options)
  @bucket.delete(key, options.dup)
  value
end
key?(key, options = {}) click to toggle source

(see Proxy#key?)

# File lib/moneta/adapters/riak.rb, line 26
def key?(key, options = {})
  @bucket.exists?(key, options.dup)
end
load(key, options = {}) click to toggle source

(see Proxy#load)

# File lib/moneta/adapters/riak.rb, line 31
def load(key, options = {})
  @bucket.get(key, options.dup).raw_data
rescue ::Riak::FailedRequest => ex
  nil
end
store(key, value, options = {}) click to toggle source

(see Proxy#store)

# File lib/moneta/adapters/riak.rb, line 45
def store(key, value, options = {})
  obj = ::Riak::RObject.new(@bucket, key)
  obj.content_type = options[:content_type] || @content_type
  obj.raw_data = value
  obj.store(options.dup)
  value
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.