Пример #1
0
        static void Main()
        {
            SerialPortManager serialPortManager = new SerialPortManager(CommunicationMode.Server);

            serialPortManager.Log += (sender, eventArgs) => Console.WriteLine(eventArgs.Message);

            serialPortManager.Connect();

            ManualResetEventSlim exitEvent = new ManualResetEventSlim(false);

            Console.CancelKeyPress += (sender, args) => exitEvent.Set();

            while (!exitEvent.IsSet)
            {
                Console.WriteLine("Waiting for message");

                serialPortManager.ReceiveMessage();

                Console.WriteLine("Message received with type " + OperationContext.Request.Message.MessageType);

                switch (OperationContext.Request.Message.MessageType)
                {
                case MessageType.ListFilesRequest:
                    HandleListFilesRequest(serialPortManager);
                    break;

                case MessageType.SendFileRequest:
                    HandleSendFileRequest(serialPortManager);
                    break;

                case MessageType.ReceiveFileRequest:
                    HandleReceiveFileRequest(serialPortManager);
                    break;

                default:
                    throw new NotImplementedException(
                              "No handler for message type " + OperationContext.Request.Message.MessageType);
                }
            }
        }