Esempio n. 1
0
 public string GetName()
 {
     if (!RemoteCccBo1.Connected())
     {
         RemoteCccBo1.Connect();
     }
     return(RemoteCccBo1.Invoke <string>("GetName"));
 }
Esempio n. 2
0
        public void InvokeJobStates()
        {
            var obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            var value = obj.Invoke <string>("JobStates");

            Assert.IsFalse(string.IsNullOrEmpty(value));

            obj.Disconnect();
        }
Esempio n. 3
0
        public void AddMonitoredItem()
        {
            var obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            obj.Monitor(
                "BoState",
                v => { Logger.Info($"Received value from {obj.Name}.BoState ... '{v}'."); });

            obj.Disconnect();
        }
Esempio n. 4
0
        public void InvokeNullString()
        {
            var obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            var value = obj.Invoke <string>("GetNullString");

            Assert.IsTrue(value == null);

            obj.Disconnect();
        }
Esempio n. 5
0
        public void InvokeGetBytes()
        {
            RemoteObject obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            const string value = "Moin from *UA Client* ...";
            var          bytes = obj.Invoke <byte[]>("GetBytes", value);

            Assert.NotNull(bytes);

            obj.Disconnect();
        }
Esempio n. 6
0
        public void CallMethodSometimes()
        {
            var obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            for (int i = 0; i < 50; i++)
            {
                var value = obj.Invoke <string>("JobStates");
                Assert.IsFalse(string.IsNullOrEmpty(value));
            }

            obj.Disconnect();
        }
Esempio n. 7
0
        public void WriteAndReadVariable()
        {
            var obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            var          s0 = obj.Read <string>("BoState");
            const string s1 = "THE NEW JOB STATE!";

            Assert.That(() => s0 != s1, $"'{s0}' != '{s1}'");
            obj.Write("BoState", s1);
            var s2 = obj.Read <string>("BoState");

            Assert.That(() => s1 == s2, $"'{s1}' == '{s2}'");
            obj.Write("BoState", s0);

            obj.Disconnect();
        }
Esempio n. 8
0
        public void InvokeViaRemoteMethod()
        {
            RemoteObject obj = new RemoteObject("localhost", 48030, "BusinessLogic");

            Assert.That(() => obj.Connect(), "Is TRUE!");
            var r1 = obj.Invoke <bool>("CalculateJob", "BIG JOB", 2);

            Assert.That(() => r1, $"Return value is {true}");
            var r2 = obj.Invoke <bool>("CalculateJob", "small job", -1);

            Assert.That(() => !r2, $"Return value is {false}");
            var r3 = obj.Invoke <bool>("CalculateJob", "small job", -1);

            Assert.That(() => !r2, $"Return value is {false}");

            obj.Disconnect();
        }
Esempio n. 9
0
        private ClientConsoleClient(string ip, int port, string name)
        {
            Items       = new List <object>();
            RemoteCccBo = new RemoteObject(ip, port, name);
            RemoteCccBo.Connect();
            MonitoringStarted = false;
            RemoteCccBo.SetDisconnectedHandler(
                (session, args) =>
            {
                Logger.Info($"NotConnectedHandler called for {session} with status {session.ConnectionStatus.ToString()}.");

                if (session.ConnectionStatus != ServerConnectionStatus.Disconnected)
                {
                    return;
                }

                Logger.Info($"The connection {session} is disconnected.");
                MonitoringStarted = false;
                RemoteCccBo.StartConnectionEstablishment();
            });

            RemoteCccBo.SetConnectedHandler(
                (session, args) =>
            {
                Logger.Info($"PostConnectionHandler called for {session} with status {session.ConnectionStatus.ToString()}.");

                if (session.ConnectionStatus != ServerConnectionStatus.Connected)
                {
                    return;
                }

                Logger.Info($"Connection {session} to ClientConsole established.");

                if (MonitoringStarted)
                {
                    return;
                }
                MonitoringStarted = true;

                RemoteCccBo.Monitor(new Dictionary <string, Action <Variant> >
                {
                    {
                        "BoState", strValue =>
                        {
                            CcBoState = strValue.ToString();
                            Logger.Info($"Received value from {RemoteCccBo.Name}.BoState ... '{CcBoState}'.");
                        }
                    },
                    {
                        "IntBoState", intValue =>
                        {
                            CcIntBoState = intValue.ToInt32();
                            Logger.Info($"Received value from {RemoteCccBo.Name}.IntBoState ... {CcIntBoState}.");
                        }
                    },
                    {
                        "FloatBoState", floatValue =>
                        {
                            CcFloatBoState = floatValue.ToFloat();
                            Logger.Info($"Received value from {RemoteCccBo.Name}.FloatBoState ... {CcFloatBoState}.");
                        }
                    }
                });
            });
        }