Skip to content

Instantly share code, notes, and snippets.

@radar
Forked from gerep/riak_wrapper.rb
Created October 17, 2013 22:16
Show Gist options
  • Save radar/7033251 to your computer and use it in GitHub Desktop.
Save radar/7033251 to your computer and use it in GitHub Desktop.
class RiakWrapper
def self.setup
@client ||= begin
walk_server = WalkServer.first
Riak::Client.new(:protocol => "pbc", :host => walk_server.host, :pb_port => walk_server.pb_port)
end
end
def self.exists?(key, bucket_name)
get_bucket(bucket_name)
@bucket.exists?(key)
end
def self.get(key, bucket_name)
get_bucket(bucket_name)
@bucket.get(key)
end
def self.delete(key, bucket_name)
get_bucket(bucket_name)
@bucket.delete(key) if exists?(key, bucket_name)
end
def self.get_bucket(bucket_name)
setup
@bucket = @client.bucket(bucket_name)
end
end
# USAGE EXAMPLE
RiakWrapper.delete("#dg_123456", 'terminals')
RiakWrapper.exists?("bm_654321.dat", 'files')
RiakWrapper.get("ig_13579.xml", 'files')
# REAL USE
RiakWrapper.delete("#{acronym}_#{self.number}", 'terminals')
RiakWrapper.delete("#{acronym}_#{self.number}_params.dat", 'assets')
RiakWrapper.delete("#{acronym}_#{self.number}_params.dat", 'files')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment