コード例 #1
0
ファイル: Program.cs プロジェクト: solapvk/etcdCsharpDemo
        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());
                }
            }
        }
コード例 #2
0
ファイル: IKVClientTest.cs プロジェクト: simedcn/thesis
        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);
            }
        }
コード例 #3
0
 public KVImpl(ClientConnectionManager connectionManager)
 {
     this.connectionManager = connectionManager;
     managedChannel         = connectionManager.NewChannel();
     kVClient = new KVClient(managedChannel.Channel);
 }