A Ruby client for the Haplocheirus service.
Ruby
Pull request Compare This branch is 28 commits behind bitbckt:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
spec
LICENSE
README.md
Rakefile
haplocheirus-client.gemspec

README.md

Haplocheirus Client

Haplocheirus is a highly available, partitioned storage service for vectors of heterogenous blobs. This is a Ruby client library for that service.

INSTALLATION

gem install haplocheirus-client

USAGE

Attach a new client to a Haplo service:

>> client = Haplocheirus.new # Defaults to localhost:7666

Store a vector under the id of '0':

>> client.store '0', ['foo', 'bar']

Find the first 2 entries, starting at index 0:

>> client.get '0', 0, 2
['bar', 'foo'] # note the reverse order

Append an entry:

>> client.append '0', 'baz'
>> client.get '0', 0, 3
['baz', 'bar', 'foo']

Merge that vector with another:

>> client.merge '0', ['bat', 'quux']
>> client.get '0', 0, 5
['quux', 'baz', 'bat', 'bar', 'foo']

Remove an entry:

>> client.remove 'bat', '0'
>> client.get '0', 0, 4
['quux', 'baz', 'bar', 'foo']

Remove a set of entries:

>> client.unmerge '0' ['foo', 'bar']
>> client.get '0', 0, 2
['quux', 'baz']

Delete the vector: >> client.delete '0'

CONTRIBUTORS

Brandon Mitchell

LICENSE

Copyright (C) 2010 Twitter, Inc.

This work is licensed under the Apache License, Version 2.0. See LICENSE for details.