Пример #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            OTcpClientCommands cmds = new OTcpClientCommands();

            cmds.AddCommand("osman");
            OTcpClient       client = new OTcpClient(cmds, "127.0.0.1", 12345, TransferType.JSON);
            DataClassConcept dcsend = new DataClassConcept();

            client.SetBufferSizes(int.MaxValue, int.MaxValue);
            dcsend.number = 11;
            dcsend.str    = "2012";
            dcsend.strList.Add("kantikniet");
            client.Send("osman", dcsend);
            var msg = client.Receive();

            DataClassConcept dc = (DataClassConcept)msg.Message;

            Console.WriteLine(dc.number);
            Console.WriteLine(dc.str);
            Console.WriteLine(dc.strList[0]);
            client.Send("osman", dcsend);
            var msg2             = client.Receive();
            DataClassConcept dc2 = (DataClassConcept)msg2.Message;

            Console.WriteLine(dc2.number);
            Console.WriteLine(dc2.str);
            Console.WriteLine(dc2.strList[0]);
            client.Close();
        }
Пример #2
0
        static void Main(string[] args)
        {
            var soapUrl = $"http://{Environment.MachineName}:{1155}";
            var restUrl = $"http://{Environment.MachineName}:{1156}";
            var ogamUrl = Environment.MachineName;

            if (args.Any())
            {
                var host = args.First();
                soapUrl = $"http://{host}:{1155}";
                restUrl = $"http://{host}:{1156}";
                ogamUrl = host;
            }
            else
            {
                var soapBaseAddress = new Uri(soapUrl);
                var soapHost        = new ServiceHost(typeof(Gate), soapBaseAddress);
                soapHost.Open();


                var restBaseAddress = new Uri(restUrl);
                var restHost        = new WebServiceHost(typeof(Gate), restBaseAddress);
                restHost.Open();

                OTcpServer.Log = null;
                var srv  = new OTcpServer(1157);
                var impl = new Gate();
                srv.RegisterImplementation(impl);

                Thread.Sleep(3000);
            }

            var dto = Dto.GetObject();

            var pc = new OTcpClient(ogamUrl, 1157).CreateProxy <IGate>();

            SoapCall(dto, soapUrl);
            RestCall(dto, restUrl);
            O3Call(dto, pc);

            var cnt = 5000;

            Console.Write($"Soap cnt = {cnt} elapsed = ");
            MultiCall(cnt, () => {
                SoapCall(dto, soapUrl);
            });

            Console.Write($"Rest cnt = {cnt} elapsed = ");
            MultiCall(cnt, () => {
                RestCall(dto, restUrl);
            });

            Console.Write($"O3 cnt = {cnt} elapsed = ");
            MultiCall(cnt, () => {
                O3Call(dto, pc);
            });


            Console.ReadLine();
        }
Пример #3
0
        static void Main(string[] args)
        {
            // Create connection
            var cli = new OTcpClient("localhost", 1010);

            // Register client interface implementation
            cli.RegisterImplementation(new ClientLogigImplementation());
            // Set server error handler
            cli.SpecialMessageEvt += (message, o) => {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine($">> {o}");
                Console.WriteLine($"<< {message}");
                Console.ResetColor();
            };
            // Create proxy
            var pc = cli.CreateProxy <IServerSide>();

            // Server calls
            Console.WriteLine($"pc.IntSumm(11, 33) = {pc.IntSumm(11, 33)}");
            Console.WriteLine($"pc.DoubleSumm(1.1, 3.3) = {pc.DoubleSumm(1.1, 3.3)}");
            Console.WriteLine($"pc.IntSummOfPower(11, 33) = {pc.IntSummOfPower(11, 33)}");

            Console.WriteLine($"pc.QuadraticEquation(1,2,3) = {QuadraticString(pc.QuadraticEquation(1,2,3))}");
            Console.WriteLine($"pc.QuadraticEquation(2,4,-7) = {QuadraticString(pc.QuadraticEquation(2,4,-7))}");
            Console.WriteLine($"pc.QuadraticEquation(1,6,9) = {QuadraticString(pc.QuadraticEquation(1,6,9))}");

            pc.WriteMessage("Hello server!");

            pc.NotImplemented();

            var dto = new ExampleDTO()
            {
                DateTimeValue = DateTime.Now,
                DoubleValue   = 11.33,
                IntegerValue  = 1133,
                StringValue   = "String message",
                IntList       = new int[100].ToList(),
                StreamValue   = new MemoryStream(new byte[5000])
            };

            var echoDto = pc.TestSerializer(dto);

            Console.WriteLine($"DTO {echoDto.DateTimeValue}");

            pc.Subscribe();

            while (true)
            {
                Console.Write("CLI > ");
                var seq    = Reader.Read(Console.ReadLine());
                var result = cli.Call(seq.Car());
                Console.WriteLine($"RES > {result ?? "null"}");
            }
        }