Sha256: 0711950637909ffaceddccfdaba0684d9fe514049a2978604c8e26380592cead

Contents?: true

Size: 748 Bytes

Versions: 1

Compression:

Stored size: 748 Bytes

Contents

class Etcd
  class KV
    def initialize(hostname, port, credentials, metadata={})
      @stub = Etcdserverpb::KV::Stub.new("#{hostname}:#{port}", credentials)
      @metadata = metadata
    end

    def put(key, value, lease=nil)
      kv = Etcdserverpb::PutRequest.new(key: key, value: value)
      kv.lease = lease if lease
      @stub.put(kv, metadata: @metadata)
    end

    def get(key, range_end="")
      kv = Etcdserverpb::RangeRequest.new(key: key, range_end: range_end)
      @stub.range(kv, metadata: @metadata)
    end

    def del(key, range_end="")
      request = Etcdserverpb::DeleteRangeRequest.new(
        key: key,
        range_end: range_end
      )
      @stub.delete_range(request, metadata: @metadata)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
etcdv3-0.1.3 lib/etcdv3/kv.rb