public IDataStream Execute() { Console.WriteLine("Remote: Data received: " + Encoding.UTF8.GetString(DataToSend.ReadData())); Thread.Sleep(new Random().Next(300, 800)); byte[] resp = Encoding.UTF8.GetBytes("a"); Console.WriteLine("Remote: Data sent: " + Encoding.UTF8.GetString(resp)); IDataStream stream = new BufferDataStream(); stream.WriteData(resp); return(stream); }
public void SendData(byte[] data) { IDataStream dataStream = new BufferDataStream(); Options opts = Services.GetService <Options>(); if (opts.StreamOptions.HasFlag(EStreamOptions.Compressed)) { dataStream = new Compression(dataStream); } if (opts.StreamOptions.HasFlag(EStreamOptions.Encrypted)) { dataStream = new Encryption(dataStream); } dataStream.WriteData(data); Console.WriteLine("Local: Data sent: " + Encoding.UTF8.GetString(data)); Services.GetService <JobSystem.JobSystem>().AddJob(new SendDataJob(dataStream)) .Then(TriggerOnDataReceived); }