System.ServiceModel 4.0.0.0 System.ServiceModel.Channels.CommunicationObject

An example of a stream upgrade is to build a compression stream directly on top of the transport stream. To add a security upgrade, you additionally implement a class that derives from . You can implement multiple upgrades, each wrapping the preceding one.

The upgrade process has the following steps:

Implement a class that derives from .

Register it. You do this by creating a binding element for it, and registering the provider in a custom binding.

The derived class that you implement creates an instance of , which at run time initiates a request to the other end of its connection to upgrade the channel transport layer.

The derived class that you implement creates an instance of , which at run time receives the upgrade request from the preceding step and, if possible, accepts the upgrade and returns the upgraded stream to the other side of its connection.

If there are additional upgrade requests, they are processed sequentially, as described in the preceding two steps.

Implements a custom upgrade provider, inherited from this abstract base class.

- Constructor
  4.0.0.0

  Time-out properties are set to null.

  Initializes a new instance of the class.

- Constructor
  4.0.0.0
  To be added.

  The provided time-outs control the default Open and Close time-outs for a transport using this upgrade provider.

  Initializes a new instance of the class.

- Method
  4.0.0.0
  System.ServiceModel.Channels.StreamUpgradeAcceptor

  This method creates the associated UpgradeAcceptor for this upgrade provider that can accept upgrade requests from the matching UpgradeInitiator.

  Creates an instance of .

  Returns an instance of .

- Method
  4.0.0.0
  System.ServiceModel.Channels.StreamUpgradeInitiator `` `` To be added. To be added.

  This method creates the associated for this upgrade provider that creates upgrade requests for the matching at the endpoint provided.

  Creates an instance of .

  Returns an instance of .

- Property
  4.0.0.0
  System.TimeSpan To be added. To be added.

  Gets the DefaultCloseTimeout.

- Property
  4.0.0.0
  System.TimeSpan To be added. To be added.

  Gets the DefaultOpenTimeout.