static void Main(string[] args) { Channel c = new Channel("localhost", 2379, ChannelCredentials.Insecure); KVClient kv = new KVClient(c); Console.WriteLine("client"); while (true) { Console.WriteLine("..."); var sss = Console.ReadLine(); if (sss.StartsWith("get ")) { sss = sss.Replace("get ", "").TrimStart(); var lis = kv.Range(new Etcdserverpb.RangeRequest() { Key = ByteString.CopyFromUtf8(sss) }); Console.WriteLine(lis.ToString()); } else if (sss.StartsWith("set ")) { sss = sss.Replace("set ", "").TrimStart(); var sasa = sss.Split(' '); var res = kv.Put(new Etcdserverpb.PutRequest() { Key = Google.Protobuf.ByteString.CopyFromUtf8(sasa[0]), Value = ByteString.CopyFromUtf8(sasa[1]) }); Console.WriteLine(res.ToString()); } } }
public void TestOperation() { ClientOption option = new ClientOption(2000); option.AddMasterAddr(new Address("127.0.0.1", 20000)); IKVClient client = new KVClient(option); try { for (byte i = 0; i < 100; i++) { client.Set(new byte[] { i }, new byte[] { i }); } for (byte i = 0; i < 100; i += 2) { client.Delete(new byte[] { i }); } for (byte i = 0; i < 100; i++) { byte[] value = client.Get(new byte[] { i }); if (i % 2 != 0) { CollectionAssert.AreEqual(value, new byte[] { i }); } else { Assert.IsNull(value); } } client.Incr(new byte[] { 100 }, 0, 10); Assert.AreEqual(client.GetCounter(new byte[] { 100 }), 10); DataServerStruct[] dataServers = client.Stat(); formatStat(dataServers); } catch (Exception e) { Console.WriteLine(e.StackTrace); } }
public KVImpl(ClientConnectionManager connectionManager) { this.connectionManager = connectionManager; managedChannel = connectionManager.NewChannel(); kVClient = new KVClient(managedChannel.Channel); }