Поделиться через


StreamUpgradeProvider Класс

Определение

Реализует пользовательский поставщик обновлений, наследуемый от этого абстрактного (abstract) базового класса.

public ref class StreamUpgradeProvider abstract : System::ServiceModel::Channels::CommunicationObject
public abstract class StreamUpgradeProvider : System.ServiceModel.Channels.CommunicationObject
type StreamUpgradeProvider = class
    inherit CommunicationObject
Public MustInherit Class StreamUpgradeProvider
Inherits CommunicationObject
Наследование
StreamUpgradeProvider
Производный

Комментарии

Пример обновления потока — создание потока сжатия непосредственно поверх транспортного потока. Чтобы добавить обновление безопасности, необходимо реализовать дополнительный класс, наследуемый от класса StreamSecurityUpgradeProvider. Можно реализовать несколько обновлений, каждое из которых будет служить оболочкой для предыдущего.

Процедура обновления включает следующие шаги.

  1. Реализация класса, унаследованного от класса StreamUpgradeProvider.

  2. Его регистрация. Для этого создайте для него элемент привязки и зарегистрируйте поставщика в пользовательской привязке.

  3. Реализуемый производный класс создает экземпляр класса StreamUpgradeInitiator, который во время выполнения инициализирует запрос об обновлении транспортного уровня канала, направляемый другому участнику соединения.

  4. Реализуемый производный класс создает экземпляр класса StreamUpgradeAcceptor, который во время выполнения получает запрос об обновлении, отправленный на предыдущем шаге, и по возможности принимает обновление и возвращает обновленный поток другому участнику связи.

  5. Если имеются дополнительные запросы обновлений, они обрабатываются последовательно, как описано в двух предыдущих шагах.

Конструкторы

StreamUpgradeProvider()

Инициализирует новый экземпляр класса StreamUpgradeProvider.

StreamUpgradeProvider(IDefaultCommunicationTimeouts)

Инициализирует новый экземпляр класса StreamUpgradeProvider.

Свойства

DefaultCloseTimeout

Возвращает DefaultCloseTimeout.

DefaultOpenTimeout

Возвращает DefaultOpenTimeout.

IsDisposed

Возвращает значение, указывающее, удален ли объект связи.

(Унаследовано от CommunicationObject)
State

Возвращает значение, которое указывает на текущее состояние объекта связи.

(Унаследовано от CommunicationObject)
ThisLock

Возвращает взаимно исключающую блокировку, которая защищает экземпляр класса в процессе перехода между состояниями.

(Унаследовано от CommunicationObject)

Методы

Abort()

Вызывает мгновенный переход объекта связи из текущего состояния в состояние закрытия.

(Унаследовано от CommunicationObject)
BeginClose(AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи.

(Унаследовано от CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи с заданным временем ожидания.

(Унаследовано от CommunicationObject)
BeginOpen(AsyncCallback, Object)

Начинает асинхронную операцию открытия объекта связи.

(Унаследовано от CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию открытия объекта связи в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
Close()

Вызывает переход объекта связи из текущего состояния в состояние Closed.

(Унаследовано от CommunicationObject)
Close(TimeSpan)

Вызывает переход объекта связи из его текущего состояния в состояние Closed в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
CreateUpgradeAcceptor()

Создает экземпляр класса StreamUpgradeAcceptor.

CreateUpgradeInitiator(EndpointAddress, Uri)

Создает экземпляр класса StreamUpgradeInitiator.

EndClose(IAsyncResult)

Завершает асинхронную операцию закрытия объекта связи.

(Унаследовано от CommunicationObject)
EndOpen(IAsyncResult)

Завершает асинхронную операцию открытия объекта связи.

(Унаследовано от CommunicationObject)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Fault()

Вызывает переход объекта связи из текущего состояния в состояние Faulted.

(Унаследовано от CommunicationObject)
GetCommunicationObjectType()

Возвращает тип объекта связи.

(Унаследовано от CommunicationObject)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetProperty<T>()

При реализации в производном классе возвращает свойство текущего потока, которое представляет инициатор обновления потока.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnAbort()

Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции прерывания.

(Унаследовано от CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом асинхронной операции закрытия.

(Унаследовано от CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия в связи с вызовом асинхронной операции открытия.

(Унаследовано от CommunicationObject)
OnClose(TimeSpan)

Вставляет операцию обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции закрытия.

(Унаследовано от CommunicationObject)
OnClosed()

Вызывается в процессе перехода объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
OnClosing()

Вызывается в процессе перехода объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
OnEndClose(IAsyncResult)

Завершает асинхронную операцию при закрытии объекта связи.

(Унаследовано от CommunicationObject)
OnEndOpen(IAsyncResult)

Завершает асинхронную операцию при открытии объекта связи.

(Унаследовано от CommunicationObject)
OnFaulted()

Вставляет операцию обработки объекта связи после перехода объекта в состояние Faulted в связи с вызовом синхронной операции ошибки.

(Унаследовано от CommunicationObject)
OnOpen(TimeSpan)

Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия, которое должно быть выполнено в течение указанного интервала времени.

(Унаследовано от CommunicationObject)
OnOpened()

Вызывается в процессе перехода объекта связи в состояние Opened.

(Унаследовано от CommunicationObject)
OnOpening()

Вызывается в процессе перехода объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)
Open()

Вызывает переход объекта связи из состояния Created в состояние Opened.

(Унаследовано от CommunicationObject)
Open(TimeSpan)

Вызывает переход объекта связи из состояния Created в состояние Opened в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
ThrowIfDisposed()

Вызывает исключение, если объект связи удален.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrImmutable()

Создает исключение, если для свойства объекта связи State не установлено значение Created.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrNotOpen()

Создает исключение, если объект связи не находится в состоянии Opened.

(Унаследовано от CommunicationObject)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

События

Closed

Происходит при переходе объекта связи в состояние Closed.

(Унаследовано от CommunicationObject)
Closing

Происходит при переходе объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
Faulted

Происходит при переходе объекта связи в состояние Faulted.

(Унаследовано от CommunicationObject)
Opened

Происходит при переходе объекта связи в состояние Opened.

(Унаследовано от CommunicationObject)
Opening

Происходит при переходе объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)

Применяется к

См. также раздел