Exposes Methods to get and write responses to server side requests using .NET Remoting.
Inheritance: System.MarshalByRefObject
 public GatewayRequest(RequestsGateway gateway, long requestId)
 {
     this.requestId    = requestId;
     this.gateway      = gateway;
     this.requestBody  = new MemoryStream();
     this.responseBody = new MemoryStream();
 }
        protected override void OnInitialize()
        {
            UnixChannel channel = new UnixChannel();

            ChannelServices.RegisterChannel(channel, false);
            string listenerObjectPath = RequestsGateway.GetApplicationUnixChannelAbsoluteUri(Path.GetFullPath(this.BaseDirectory));

            Console.WriteLine("Connecting to Unix Pipe {0}", listenerObjectPath);
            gateway = (RequestsGateway)Activator.GetObject(typeof(RequestsGateway), listenerObjectPath);
            Console.WriteLine("Connected to Gateway = {0}", gateway != null);
            //gateway.Receiver = this.inner;
            Console.WriteLine("Gateway Host has Initialized Connection with Nginx Server");

            exposeRequestReceiver();
        }