| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- //
- // System.Runtime.Remoting.Channels.BinaryClientFormatterSink.cs
- //
- // Author: Rodrigo Moya ([email protected])
- // Dietmar Maurer ([email protected])
- //
- // 2002 (C) Copyright, Ximian, Inc.
- //
- using System.Collections;
- using System.IO;
- using System.Runtime.Remoting.Messaging;
- namespace System.Runtime.Remoting.Channels
- {
- public class BinaryClientFormatterSink : IClientFormatterSink,
- IMessageSink, IClientChannelSink, IChannelSinkBase
- {
- private IClientChannelSink nextInChain;
-
- public BinaryClientFormatterSink (IClientChannelSink nextSink)
- {
- nextInChain = nextSink;
- }
- public IClientChannelSink NextChannelSink
- {
- get {
- return nextInChain;
- }
- }
- public IMessageSink NextSink
- {
- get {
- return (IMessageSink) nextInChain;
- }
- }
- public IDictionary Properties
- {
- get {
- return null;
- }
- }
- [MonoTODO]
- public IMessageCtrl AsyncProcessMessage (IMessage msg,
- IMessageSink replySink)
- {
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public void AsyncProcessRequest (IClientChannelSinkStack sinkStack,
- IMessage msg,
- ITransportHeaders headers,
- Stream stream)
- {
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public void AsyncProcessResponse (IClientResponseChannelSinkStack sinkStack,
- object state,
- ITransportHeaders headers,
- Stream stream)
- {
- throw new NotImplementedException ();
- }
- public Stream GetRequestStream (IMessage msg,
- ITransportHeaders headers)
- {
- return null;
- }
- public void ProcessMessage (IMessage msg,
- ITransportHeaders requestHeaders,
- Stream requestStream,
- out ITransportHeaders responseHeaders,
- out Stream responseStream)
- {
- nextInChain.ProcessMessage (msg, requestHeaders, requestStream,
- out responseHeaders, out responseStream);
- }
- [MonoTODO]
- public IMessage SyncProcessMessage (IMessage msg)
- {
- ITransportHeaders response_headers;
- Stream response_stream;
-
- // fixme: use nextInChain.GetRequestStream() ??
- Stream out_stream = new MemoryStream ();
- // fixme: serialize msg to the stream
- ProcessMessage (msg, null, out_stream, out response_headers, out response_stream);
- // fixme: deserialize response_stream
- IMessage result = null;
- return null;
- }
- }
- }
|