Exemplo n.º 1
0
        public async Task <ComplexStream> ComplexCallAsync(CustomObj obj, string p1, Stream stream, Func <CustomCallbackObj, Task> cb, CancellationToken token)
        {
            Console.WriteLine($"[ComplexCallAsync]...receive:{obj}, p1:{p1}, streamLength:{stream.Length}");

            for (var i = 1; i <= 3; i++)
            {
                Console.Write($"{i}, ");
                await cb(new CustomCallbackObj { Progress = i });

                await Task.Delay(1000, token);
            }

            var ret = new ComplexStream
            {
                Stream     = File.Open(Helper.GetTestFilePath(), FileMode.Open, FileAccess.Read, FileShare.ReadWrite),
                StreamName = "TestFile.txt",
                InnerObj   = new InnerObj
                {
                    CustomObj = new CustomObj
                    {
                        Name = NameEnum.John
                    },
                    P1 = "中文p1!@#$%^&*()_+\"\":?~!@#$"
                }
            };

            return(ret);
        }
Exemplo n.º 2
0
        public async Task <T2> CallByGenericAsync <T1, T2>(T1 obj)
        {
            var ret = new CustomObj {
                Date = DateTime.Now, Name = "GetObjAsync"
            };

            Console.WriteLine($"[CallByGenericAsync], receive:{obj}");
            return(default);
Exemplo n.º 3
0
        public async Task <CustomObj> SetAndGetObj(CustomObj obj)
        {
            var ret = new CustomObj {
                Date = DateTime.Now, Name = "SetAndGetObj"
            };

            Console.WriteLine($"[SetAndGetObj], receive:{obj}, return:{ret}");
            return(ret);
        }
Exemplo n.º 4
0
        public async Task <CustomObj> CallAsync(string p1, int p2)
        {
            var retObj = new CustomObj {
                Date = DateTime.Now, Name = NameEnum.John
            };
            var h = GlobalActionExecutingContext.Context.Header;

            //Console.WriteLine($"[Call]...receive:{p1}, {p2}, h1:{h["h1"]}, h2:{h["h2"]} return:{retObj}");
            Console.WriteLine($"[Call]...receive:{p1}, {p2}, return:{retObj}");
            return(retObj);
        }
Exemplo n.º 5
0
        private static void Test_SetAndGetObj()
        {
            var obj = new CustomObj {
                Date = DateTime.Now, Name = "test"
            };

            Console.Write($"[SetAndGetObj], send:{obj}, ");
            var ret = _proxy.SetAndGetObj(obj);

            Console.WriteLine($"receive:{ret}");
        }
Exemplo n.º 6
0
        private static async Task Test_SetAndGetObjAsync()
        {
            var obj = new CustomObj {
                Date = DateTime.Now, Name = "test"
            };

            Console.Write($"[SetAndGetObjAsync], send:{obj}, ");
            var ret = await _proxyAsync.SetAndGetObj(obj);

            Console.WriteLine($"receive:{ret}");
        }
Exemplo n.º 7
0
        private static void Test_CallByGeneric()
        {
            CustomObj obj = new CustomObj {
                Date = DateTime.Now, Name = "test"
            };

            Console.Write($"[CallByGeneric], send:{obj}, receive:");
            var ret = _proxy.CallByGenericType <CustomObj, int>(obj);

            Console.WriteLine($"{ret}");
        }
Exemplo n.º 8
0
        private static async Task Test_CallByGenericAsync()
        {
            CustomObj obj = new CustomObj {
                Date = DateTime.Now, Name = "test"
            };

            Console.Write($"[CallByGenericAsync], send:{obj}, ");
            var ret = await _proxyAsync.CallByGenericAsync <CustomObj, int>(obj);

            Console.WriteLine($"receive:{ret}");
        }
Exemplo n.º 9
0
        public void TestMultipleBindables()
        {
            var toSerialize = new CustomObj
            {
                Bindable1 = { Value = 1337 },
                Bindable2 = { Value = 1338 },
            };

            var deserialized = JsonConvert.DeserializeObject <CustomObj>(JsonConvert.SerializeObject(toSerialize));

            Assert.AreEqual(toSerialize.Bindable1.Value, deserialized.Bindable1.Value);
            Assert.AreEqual(toSerialize.Bindable2.Value, deserialized.Bindable2.Value);
        }
Exemplo n.º 10
0
        public async Task <ComplexStream> ComplexCallAsync(CustomObj obj, Stream data, Func <CustomCallbackObj, Task> cb, CancellationToken token)
        {
            Console.Write($"[ComplexCallAsync]...Received length:{data.Length}, {Helper.ReadStr(data)}, ");
            for (var i = 1; i <= 3; i++)
            {
                Console.Write($"{i}, ");
                await cb(new CustomCallbackObj { Progress = i });

                await Task.Delay(100, token);
            }

            Console.WriteLine("...Send TestFile.txt");
            return(new ComplexStream
            {
                Stream = File.Open(Helper.GetTestFilePath(), FileMode.Open, FileAccess.Read, FileShare.ReadWrite),
                OtherInfo = "this is other info"
            });
        }
Exemplo n.º 11
0
        public ComplexStream ComplexCall(CustomObj obj, Stream data, Func <CustomCallbackObj, Task> cb)
        {
            Console.Write($"[ComplexCall]...Received length:{data.Length}, {Helper.ReadStr(data)}, ");
            for (var i = 1; i <= 3; i++)
            {
                Console.Write($"{i}, ");
                cb(new CustomCallbackObj {
                    Progress = i
                });
                Task.Delay(100).Wait();
            }

            Console.WriteLine("...Send TestFile.txt");
            return(new ComplexStream
            {
                Stream = File.Open(Helper.GetTestFilePath(), FileMode.Open, FileAccess.Read, FileShare.ReadWrite),
                OtherInfo = "this is other info"
            });
        }