public OperationResult <List <List <int> > > GetData(string matrixName)
        {
            var result = new OperationResult <List <List <int> > >();

            try
            {
                IPEndPoint ipPoint = new IPEndPoint(IPAddress.Parse(ipAddress), port);
                Socket     socket  = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                socket.Connect(ipPoint);
                byte[] data = Encoding.Unicode.GetBytes(matrixName);
                socket.Send(data);
                logger.Log(SocketServiceMessage.socketSuccessfullyConnected);
                data = new byte[256];
                StringBuilder builder = new StringBuilder();
                int           bytes   = 0;

                do
                {
                    bytes = socket.Receive(data, data.Length, 0);
                    builder.Append(Encoding.Unicode.GetString(data, 0, bytes));
                }while (socket.Available > 0);
                string receivedData = builder.ToString();
                logger.Log(receivedData);
                var response = JsonSerializer.Deserialize <OperationResult <string> >(receivedData);

                if (response.Status == OperationStatus.Ok)
                {
                    result.Status = OperationStatus.Ok;
                    result.Data   = MatrixStringParser.Parse(response.Data);
                }
                else
                {
                    result.Status  = OperationStatus.Error;
                    result.Message = response.Message;
                }
                socket.Shutdown(SocketShutdown.Both);
                socket.Close();
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                throw ex;
            }
            return(result);
        }
Exemple #2
0
        public void MX3x3Test(string data)
        {
            var listToCompare = new List <List <int> >()
            {
                new List <int>()
                {
                    3, 2, 5
                },
                new List <int>()
                {
                    24, 1, 3
                },
                new List <int>()
                {
                    4, 5, 2
                }
            };
            var res = MatrixStringParser.Parse(data);

            Assert.IsTrue(TwoDimensionalListsComparator.Compare(res, listToCompare));
        }