System.Runtime.Remoting.Channels.IClientChannelSink Interface

Assembly: Mscorlib.dll
Namespace: System.Runtime.Remoting.Channels
Summary
Provides required functions and properties for client channel sinks.
C# Syntax:
public interface IClientChannelSink : IChannelSinkBase
Remarks
Channel sinks provide a plug-in point that allows access to the underlying messages flowing through the channel as well as the stream used by the transport mechanism to send messages to a remote object. Channel sinks are linked together in a chain of channel sink providers and all channel messages flow through this chain of sinks before they are serialized and transported.
See also:
System.Runtime.Remoting.Channels Namespace See also:
MSDN: sinkssinkchains

System.Runtime.Remoting.Channels.IClientChannelSink Member List:

Public Properties
NextChannelSink Read-only

Gets the next client channel sink in the client sink chain.
Public Methods
AsyncProcessRequest Requests asynchronous processing of a method call on the current sink.
AsyncProcessResponse Requests asynchronous processing of a response to a method call on the current sink.
GetRequestStream Returns the Stream onto which the provided message is to be serialized.
ProcessMessage Requests message processing from the current sink.

Hierarchy:


System.Runtime.Remoting.Channels.IClientChannelSink Member Details

Property: NextChannelSink (read-only)
Summary
Gets the next client channel sink in the client sink chain.
C# Syntax:
IClientChannelSink NextChannelSink {get;}
Remarks
Channel sinks are linked together in a chain of sink providers and all channel messages flow through this chain before they are serialized and transported.

Return to top


Method: AsyncProcessRequest(
   IClientChannelSinkStack sinkStack,
   IMessage msg,
   ITransportHeaders headers,
   Stream stream
)
Summary
Requests asynchronous processing of a method call on the current sink.
C# Syntax:
void AsyncProcessRequest(
   IClientChannelSinkStack sinkStack,
   IMessage msg,
   ITransportHeaders headers,
   Stream stream
);
Parameters:

sinkStack

A stack of channel sinks that called this sink.

msg

The message to process.

headers

The headers to add to the outgoing message heading to the server.

stream

The stream headed to the transport sink.

See also:
MSDN: sinkssinkchains

Return to top


Method: AsyncProcessResponse(
   IClientResponseChannelSinkStack sinkStack,
   object state,
   ITransportHeaders headers,
   Stream stream
)
Summary
Requests asynchronous processing of a response to a method call on the current sink.
C# Syntax:
void AsyncProcessResponse(
   IClientResponseChannelSinkStack sinkStack,
   object state,
   ITransportHeaders headers,
   Stream stream
);
Parameters:

sinkStack

A stack of sinks that called this sink.

state

Information generated on the request side that is associated with this sink.

headers

The headers retrieved from the server response stream.

stream

The stream coming back from the transport sink.

Return to top


Method: GetRequestStream(
   IMessage msg,
   ITransportHeaders headers
)
Summary
Returns the Stream onto which the provided message is to be serialized.
C# Syntax:
Stream GetRequestStream(
   IMessage msg,
   ITransportHeaders headers
);
Parameters:

msg

The IMethodCallMessage containing details about the method call.

headers

The headers to add to the outgoing message heading to the server.

Return Value:
The Stream onto which the provided message is to be serialized.
Remarks
The IClientChannelSink.GetRequestStream method is called by the formatter sink before it serializes the message.
See also:
MSDN: sinkssinkchains

Return to top


Method: ProcessMessage(
   IMessage msg,
   ITransportHeaders requestHeaders,
   Stream requestStream,
   out ITransportHeaders responseHeaders,
   out Stream responseStream
)
Summary
Requests message processing from the current sink.
C# Syntax:
void ProcessMessage(
   IMessage msg,
   ITransportHeaders requestHeaders,
   Stream requestStream,
   out ITransportHeaders responseHeaders,
   out Stream responseStream
);
Parameters:

msg

The message to process.

requestHeaders

The headers to add to the outgoing message heading to the server.

requestStream

The stream headed to the transport sink.

responseHeaders

When this method returns, contains an ITransportHeaders interface that holds the headers that the server returned. This parameter is passed uninitialized.

responseStream

When this method returns, contains a Stream coming back from the transport sink. This parameter is passed uninitialized.

See also:
MSDN: sinkssinkchains

Return to top


Top of page

Copyright (c) 2002 Microsoft Corporation. All rights reserved.