コード例 #1
0
        private async Task CreateSocket(List <Fact> socketFacts, string socketName)
        {
            var creatingSocket = new CustomSocket();

            foreach (var fact in socketFacts)
            {
                SocketType.GetProperty(fact.Domain.ToString()).SetValue(creatingSocket, fact.Value);
            }
            creatingSocket.SocketName = socketName;
            try
            {
                await Client.UpsertSocketAsync(creatingSocket);

                Console.WriteLine($"Разъем: {creatingSocket.SocketName} был успешно добавлен.");
            }
            catch (Exception e)
            {
                WritePaddedTop(e.Message);
            }
        }
コード例 #2
0
        private async Task UpdateSocket(string socketName, IEnumerable <Fact> socketFacts)
        {
            var socket = new CustomSocket();

            foreach (var fact in socketFacts)
            {
                SocketType.GetProperty(fact.Domain.ToString()).SetValue(socket, fact.Value);
            }
            socket.SocketName = socketName;

            try
            {
                await Client.UpsertSocketAsync(socket);

                Console.WriteLine($"Разъем: {socket.SocketName} был успешно обновлен.");
            }
            catch (Exception e)
            {
                WritePaddedTop(e.Message);
            }
        }
コード例 #3
0
        private async Task ForwardProcessing(FactSet factSet)
        {
            WritePaddedBottom($"Прямой продукционный вывод для {factSet}");
            var customSocket = new CustomSocket();

            foreach (var fact in factSet)
            {
                SocketType.GetProperty(fact.Domain.ToString()).SetValue(customSocket, fact.Value);
            }

            try
            {
                var foundSockets = await Client.FindSocketsByParams(customSocket).ResponseStream.ToListAsync();

                WritePaddedTop("Возможные разъемы: " + string.Join(", ", foundSockets));
            }
            catch (Exception e)
            {
                WritePaddedTop(e.Message);
            }
        }
コード例 #4
0
        private async Task LogicProcessing(FactSet factSet, string socketName)
        {
            WritePaddedBottom($"Логический вывод утверждения {socketName} при посылках {factSet}");
            var customSocket = new CustomSocket {
                SocketName = socketName
            };

            foreach (var fact in factSet)
            {
                SocketType.GetProperty(fact.Domain.ToString()).SetValue(customSocket, fact.Value);
            }

            try
            {
                var socket = await Client.IsParamsMatchSocketAsync(customSocket);

                WritePaddedTop(socket != null ? $"Утверждение для {socketName} верно" : "Утверждение неверно");
            }
            catch (Exception e)
            {
                WritePaddedTop(e.Message);
            }
        }