Class: Etcdv3::KV
- Inherits:
-
Object
- Object
- Etcdv3::KV
- Defined in:
- lib/etcdv3/kv.rb
Constant Summary collapse
- SORT_TARGET =
{ key: 0, version: 1, create: 2, mod: 3, value: 4 }
- SORT_ORDER =
{ none: 0, ascend: 1, descend: 2 }
Instance Method Summary collapse
- #del(key, range_end = "") ⇒ Object
- #get(key, opts = {}) ⇒ Object
-
#initialize(hostname, credentials, metadata = {}) ⇒ KV
constructor
A new instance of KV.
- #put(key, value, lease = nil) ⇒ Object
Constructor Details
#initialize(hostname, credentials, metadata = {}) ⇒ KV
Returns a new instance of KV.
19 20 21 22 |
# File 'lib/etcdv3/kv.rb', line 19 def initialize(hostname, credentials, ={}) @stub = Etcdserverpb::KV::Stub.new(hostname, credentials) = end |
Instance Method Details
#del(key, range_end = "") ⇒ Object
40 41 42 43 44 45 46 |
# File 'lib/etcdv3/kv.rb', line 40 def del(key, range_end="") request = Etcdserverpb::DeleteRangeRequest.new( key: key, range_end: range_end ) @stub.delete_range(request, metadata: ) end |
#get(key, opts = {}) ⇒ Object
30 31 32 33 34 35 36 37 38 |
# File 'lib/etcdv3/kv.rb', line 30 def get(key, opts={}) opts[:sort_order] = SORT_ORDER[opts[:sort_order]] \ if opts[:sort_order] opts[:sort_target] = SORT_TARGET[opts[:sort_target]] \ if opts[:sort_target] opts[:key] = key kv = Etcdserverpb::RangeRequest.new(opts) @stub.range(kv, metadata: ) end |
#put(key, value, lease = nil) ⇒ Object
24 25 26 27 28 |
# File 'lib/etcdv3/kv.rb', line 24 def put(key, value, lease=nil) kv = Etcdserverpb::PutRequest.new(key: key, value: value) kv.lease = lease if lease @stub.put(kv, metadata: ) end |