Exemplo n.º 1
0
        public override IResult Execute()
        {
            #region Code for sending command to remote system
            PacketElements CommandPacketElems = new PacketElements();
            CommandPacketElems.ActualCommand = Command;
            long HeaderValue = long.Parse(ConfigurationSettings.AppSettings["CommandHeader"]);
            CommandPacketElems.Header = HeaderValue;
            PackCommand CommandPckt = new PackCommand();
            CommandPckt.PacketElements = CommandPacketElems;
            TransmitCommand SendCmd = new TransmitCommand();
            SendCmd.DataPacket       = CommandPckt.CommandPack;
            SendCmd.RemoteSystemName = NetParams.RemoteSystemName;
            SendCmd.SendCommand();
            #endregion

            #region Code for receiving result from remote system
            ReceiveResult       ReceiveData    = new ReceiveResult();
            ResultPacketElement ResultElements = ReceiveData.GetResultPacket();
            IResult             Result         = new ExecutionResult();
            if (ResultElements.Header == int.Parse(ConfigurationSettings.AppSettings["ResultHeader"]))
            {
                Result = ResultElements.ActualResult;
            }
            else
            {
                throw(new ApplicationException("Corrupted Result"));
            }
            #endregion
            return(Result);
        }
Exemplo n.º 2
0
        public void ExecuteRemoteCommand()
        {
            ReceiveCommand GetCmd           = new ReceiveCommand();
            PacketElements CmdPacketElement = GetCmd.GetCommandPacket();

            Command = CmdPacketElement.ActualCommand;
            IResult             ExecResult    = Execute();
            ResultPacketElement ResultElement = new ResultPacketElement();

            ResultElement.ActualResult = ExecResult;
            ResultElement.Header       = int.Parse(ConfigurationSettings.AppSettings["ResultHeader"]);
            PackResult PackRes = new PackResult();

            PackRes.ResultPacketElements = ResultElement;
            byte[]         ResultPacket = PackRes.ResultPack;
            TransmitResult SendResult   = new TransmitResult();

            SendResult.DataPacket       = ResultPacket;
            SendResult.RemoteSystemName = GetCmd.SenderIP;
            SendResult.SendResult();
        }