<?xml version="1.0" encoding="utf-8"?>
<Type Name="BinaryServerFormatterSink" FullName="System.Runtime.Remoting.Channels.BinaryServerFormatterSink">
  <TypeSignature Language="C#" Maintainer="auto" Value="public class BinaryServerFormatterSink : System.Runtime.Remoting.Channels.IServerChannelSink" />
  <AssemblyInfo>
    <AssemblyName>System.Runtime.Remoting</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>1.0.3300.0</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.Runtime.Remoting.Channels.IServerChannelSink</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The request stream propagates from the server transport sink through the server channel sinks until it reaches the appropriate formatter sink. The formatter sink deserializes the message and passes it through the pipeline. A special dispatch sink is inserted at the end of the channel sink chain by the <see cref="M:System.Runtime.Remoting.Channels.ChannelServices.CreateServerChannelSinkChain(System.Runtime.Remoting.Channels.IServerChannelSinkProvider,System.Runtime.Remoting.Channels.IChannelReceiver)" /> method, which is called by server channels to create the server channel sink chains. When the message reaches the dispatch sink, the dispatch sink passes the message to the remoting infrastructure.</para>
      <para>The following table shows the sink configuration properties that can be specified for the current sink provider.</para>
      <list type="table">
        <listheader>
          <item>
            <term>
              <para>Property </para>
            </term>
            <description>
              <para>Description </para>
            </description>
          </item>
        </listheader>
        <item>
          <term>
            <para>includeVersions </para>
          </term>
          <description>
            <para>Specifies whether the formatter will include versioning information. Values true or false.</para>
          </description>
        </item>
        <item>
          <term>
            <para>strictBinding </para>
          </term>
          <description>
            <para>Indicates that a receiving formatter will first try to identify the type using complete version information if it exists before using only the type name and assembly name without version information. Values true or false. The default for both system-provided formatters is false. </para>
          </description>
        </item>
        <item>
          <term>
            <para>typeFilterLevel </para>
          </term>
          <description>
            <para>A string value that specifies the level of automatic deserialization that a server channel attempts. Supported values are Low (the default) and Full. For details about deserialization levels, see <format type="text/html"><a href="313A0E88-5B2B-4A17-8391-0DDF9F7A787B">[&lt;topic://cpconAutomaticDeserializationInNETRemoting&gt;]</a></format>.</para>
            <para>This property is supported only by the .NET Framework version 1.1 on the following platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, and Windows Server 2003 family. </para>
          </description>
        </item>
      </list>
      <block subset="none" type="note">
        <para>Using an instance of this object with untrusted data or across an unsecure channel is a security risk. Use this object only with trusted data and across a secure channel. For more information, see <see cref="http://go.microsoft.com/fwlink/?LinkId=330378">Untrusted Data Security Risks</see>.</para>
      </block>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Provides the implementation for a server formatter sink that uses the <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter" />.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public BinaryServerFormatterSink (System.Runtime.Remoting.Channels.BinaryServerFormatterSink.Protocol protocol, System.Runtime.Remoting.Channels.IServerChannelSink nextSink, System.Runtime.Remoting.Channels.IChannelReceiver receiver);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="protocol" Type="System.Runtime.Remoting.Channels.BinaryServerFormatterSink+Protocol" />
        <Parameter Name="nextSink" Type="System.Runtime.Remoting.Channels.IServerChannelSink" />
        <Parameter Name="receiver" Type="System.Runtime.Remoting.Channels.IChannelReceiver" />
      </Parameters>
      <Docs>
        <param name="protocol">To be added: an object of type 'BinaryServerFormatterSink+Protocol'</param>
        <param name="nextSink">To be added: an object of type 'IServerChannelSink'</param>
        <param name="receiver">To be added: an object of type 'IChannelReceiver'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AsyncProcessResponse">
      <MemberSignature Language="C#" Value="public void AsyncProcessResponse (System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack, object state, System.Runtime.Remoting.Messaging.IMessage message, System.Runtime.Remoting.Channels.ITransportHeaders headers, System.IO.Stream stream);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sinkStack" Type="System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack" />
        <Parameter Name="state" Type="System.Object" />
        <Parameter Name="message" Type="System.Runtime.Remoting.Messaging.IMessage" />
        <Parameter Name="headers" Type="System.Runtime.Remoting.Channels.ITransportHeaders" />
        <Parameter Name="stream" Type="System.IO.Stream" />
      </Parameters>
      <Docs>
        <param name="message">To be added.</param>
        <remarks>To be added</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Requests processing of the response from a method call that is sent asynchronously.</para>
        </summary>
        <param name="sinkStack">
          <attribution license="cc4" from="Microsoft" modified="false" />A stack of sinks that is leading back to the server transport sink. </param>
        <param name="state">
          <attribution license="cc4" from="Microsoft" modified="false" />Information that is associated with the current sink, generated on the request side, and needed on the response side. </param>
        <param name="headers">
          <attribution license="cc4" from="Microsoft" modified="false" />The headers to add to the return message that is heading to the client. </param>
        <param name="stream">
          <attribution license="cc4" from="Microsoft" modified="false" />The stream that is heading back to the transport sink. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetResponseStream">
      <MemberSignature Language="C#" Value="public System.IO.Stream GetResponseStream (System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack, object state, System.Runtime.Remoting.Messaging.IMessage msg, System.Runtime.Remoting.Channels.ITransportHeaders headers);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.IO.Stream</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sinkStack" Type="System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack" />
        <Parameter Name="state" Type="System.Object" />
        <Parameter Name="msg" Type="System.Runtime.Remoting.Messaging.IMessage" />
        <Parameter Name="headers" Type="System.Runtime.Remoting.Channels.ITransportHeaders" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method is called when a response stream needs to be created.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the <see cref="T:System.IO.Stream" /> onto which the provided response message is to be serialized.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.IO.Stream" /> onto which the provided response message is to be serialized.</para>
        </returns>
        <param name="sinkStack">
          <attribution license="cc4" from="Microsoft" modified="false" />A stack of sinks that is leading back to the server transport sink. </param>
        <param name="state">
          <attribution license="cc4" from="Microsoft" modified="false" />Information that is associated with the current sink, generated on the request side, and needed on the response side. </param>
        <param name="msg">
          <attribution license="cc4" from="Microsoft" modified="false" />The response message to serialize. </param>
        <param name="headers">
          <attribution license="cc4" from="Microsoft" modified="false" />The headers to put in the response stream to the client. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="NextChannelSink">
      <MemberSignature Language="C#" Value="public System.Runtime.Remoting.Channels.IServerChannelSink NextChannelSink { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Runtime.Remoting.Channels.IServerChannelSink</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added: an object of type 'IServerChannelSink'</value>
        <remarks>To be added</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the next <see cref="T:System.Runtime.Remoting.Channels.IServerChannelSink" /> in the sink chain.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ProcessMessage">
      <MemberSignature Language="C#" Value="public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage (System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, out System.Runtime.Remoting.Messaging.IMessage responseMsg, out System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, out System.IO.Stream responseStream);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Runtime.Remoting.Channels.ServerProcessing</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sinkStack" Type="System.Runtime.Remoting.Channels.IServerChannelSinkStack" />
        <Parameter Name="requestMsg" Type="System.Runtime.Remoting.Messaging.IMessage" />
        <Parameter Name="requestHeaders" Type="System.Runtime.Remoting.Channels.ITransportHeaders" />
        <Parameter Name="requestStream" Type="System.IO.Stream" />
        <Parameter Name="responseMsg" Type="System.Runtime.Remoting.Messaging.IMessage&amp;" RefType="out" />
        <Parameter Name="responseHeaders" Type="System.Runtime.Remoting.Channels.ITransportHeaders&amp;" RefType="out" />
        <Parameter Name="responseStream" Type="System.IO.Stream&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="sinkStack">To be added: an object of type 'IServerChannelSinkStack'</param>
        <param name="requestMsg">To be added: an object of type 'Runtime.Remoting.Messaging.IMessage'</param>
        <param name="requestHeaders">To be added: an object of type 'ITransportHeaders'</param>
        <param name="requestStream">To be added: an object of type 'IO.Stream'</param>
        <param name="responseMsg">To be added: an object of type 'Runtime.Remoting.Messaging.IMessage&amp;'</param>
        <param name="responseHeaders">To be added: an object of type 'ITransportHeaders&amp;'</param>
        <param name="responseStream">To be added: an object of type 'IO.Stream&amp;'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'ServerProcessing'</returns>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Properties">
      <MemberSignature Language="C#" Value="public System.Collections.IDictionary Properties { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Collections.IDictionary</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added: an object of type 'Collections.IDictionary'</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>For more information, see <format type="text/html"><a href="226ECF74-EBBD-4EA0-A701-DCF4441DEEFE">[&lt;topic://cpconchannelformatterconfigurationproperties&gt;]</a></format>.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets a <see cref="T:System.Collections.IDictionary" /> of properties for the current channel sink.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="TypeFilterLevel">
      <MemberSignature Language="C#" Value="public System.Runtime.Serialization.Formatters.TypeFilterLevel TypeFilterLevel { set; get; }" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(false)</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Runtime.Serialization.Formatters.TypeFilterLevel</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Supported values are Low (the default) and Full. For details about deserialization levels, see <format type="text/html"><a href="313a0e88-5b2b-4a17-8391-0ddf9f7a787b">Automatic Deserialization in .NET Remoting</a></format>.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the TypeFilterLevel value of automatic deserialization that the BinaryServerFormatterSink performs.</para>
        </summary>
      </Docs>
    </Member>
  </Members>
</Type>