Ejemplo n.º 1
0
        public AResponse Send(ARequest request)
        {
            string    messageToSend = request.ParseToString();
            AResponse response      = null;

            try
            {
                TcpClient client = new TcpClient();

                // connect to the server
                client.Connect(SettingsManager.Instance.PlayerSettings.Ip.ToString(), (int)_port);

                // Send stream
                Stream        stream           = client.GetStream();
                ASCIIEncoding encoding         = new ASCIIEncoding();
                byte[]        requestByteArray = encoding.GetBytes(messageToSend);

                // Transmitting data
                stream.Write(requestByteArray, 0, requestByteArray.Length);

                // Get response
                byte[] responseByteArray = new byte[500];
                int    responseLength    = stream.Read(responseByteArray, 0, 500);

                string responseMessage = string.Empty;
                for (int i = 0; i < responseLength; i++)
                {
                    responseMessage += Convert.ToChar(responseByteArray[i]);
                }

                // close connection to server
                client.Close();

                // get response
                response = ResponseFactory.Instance.CreateResponse(responseMessage);
            }
            catch (Exception e)
            {
                throw e;
            }


            return(response);
        }
Ejemplo n.º 2
0
        public static ARequest CreateRequest(MessageType type)
        {
            ARequest request = null;

            switch (type)
            {
            case MessageType.SetImage:
                request = new SetImageRequest();
                break;

            case MessageType.SetText:
                request = new SetTextRequest();
                break;

            case MessageType.RemoveAddon:
                request = new RemoveAddonRequest();
                break;

            case MessageType.Play:
                request = new PlayRequest();
                break;

            case MessageType.Stop:
                request = new StopRequest();
                break;

            case MessageType.Pause:
                request = new PauseRequest();
                break;

            case MessageType.Resume:
                request = new ResumeRequest();
                break;

            case MessageType.Seek:
                request = new SeekRequest();
                break;

            case MessageType.Volume:
                request = new VolumeRequest();
                break;

            case MessageType.Termination:
                request = new TerminationRequest();
                break;

            case MessageType.WindowLayout:
                request = new WindowLayoutRequest();
                break;

            case MessageType.VideoLayout:
                request = new VideoLayoutRequest();
                break;

            case MessageType.SoundFx:
                request = new SoundFxRequest();
                break;

            case MessageType.Sound3d:
                request = new Sound3dRequest();
                break;

            case MessageType.MidiProperties:
                request = new MidiPropertiesRequest();
                break;

            case MessageType.MidiOutputPortInfo:
                request = new MidiOutputPortInfoRequest();
                break;

            case MessageType.SetMidiOutputPort:
                request = new SetMidiOutputPortRequest();
                break;

            case MessageType.SetDls:
                request = new SetDlsRequest();
                break;

            case MessageType.SetFrequency:
                request = new SetFrequencyRequest();
                break;

            case MessageType.SetRate:
                request = new SetRateRequest();
                break;

            case MessageType.SetPlayerType:
                request = new SetPlayerTypeRequest();
                break;

            default:
                // throw exception
                break;
            }

            return(request);
        }