C# Class Opc.Ua.Server.SessionPublishQueue

Manages the publish queues for a session.
Inheritance: IDisposable
ファイルを表示 Open project: OPCFoundation/UA-.NET Class Usage Examples

Public Methods

Method Description
Acknowledge ( OperationContext context, SubscriptionAcknowledgementCollection subscriptionAcknowledgements, StatusCodeCollection &acknowledgeResults, DiagnosticInfoCollection &acknowledgeDiagnosticInfos ) : void

Processes acknowledgements for previously published messages.

Add ( Subscription subscription ) : void

Adds a subscription from the publish queue.

Close ( ) : IList

Clears the queues because the session is closing.

CompletePublish ( bool requeue, AsyncPublishOperation operation, object calldata ) : Subscription

Completes the publish.

Dispose ( ) : void

Frees any unmanaged resources.

Publish ( uint clientHandle, System.DateTime deadline, bool requeue, AsyncPublishOperation operation ) : Subscription

Returns a subscription that is ready to publish.

PublishCompleted ( Subscription subscription, bool moreNotifications ) : void

Adds a subscription back into the queue because it has more notifications to publish.

PublishTimerExpired ( ) : void

Checks the state of the subscriptions.

Remove ( Subscription subscription ) : void

Removes a subscription from the publish queue.

SessionPublishQueue ( IServerInternal server, Session session, int maxPublishRequests ) : System

Creates a new queue.

Protected Methods

Method Description
Dispose ( bool disposing ) : void

An overrideable version of the Dispose.

Private Methods

Method Description
AssignSubscriptionToRequest ( QueuedSubscription subscription ) : void

Checks the state of the subscriptions.

TraceState ( string context ) : void

Dumps the current state of the session queue.

Method Details

Acknowledge() public method

Processes acknowledgements for previously published messages.
public Acknowledge ( OperationContext context, SubscriptionAcknowledgementCollection subscriptionAcknowledgements, StatusCodeCollection &acknowledgeResults, DiagnosticInfoCollection &acknowledgeDiagnosticInfos ) : void
context OperationContext
subscriptionAcknowledgements SubscriptionAcknowledgementCollection
acknowledgeResults StatusCodeCollection
acknowledgeDiagnosticInfos DiagnosticInfoCollection
return void

Add() public method

Adds a subscription from the publish queue.
public Add ( Subscription subscription ) : void
subscription Subscription
return void

Close() public method

Clears the queues because the session is closing.
public Close ( ) : IList
return IList

CompletePublish() public method

Completes the publish.
public CompletePublish ( bool requeue, AsyncPublishOperation operation, object calldata ) : Subscription
requeue bool if set to true the request must be requeued.
operation AsyncPublishOperation The asynchronous operation.
calldata object The calldata.
return Subscription

Dispose() public method

Frees any unmanaged resources.
public Dispose ( ) : void
return void

Dispose() protected method

An overrideable version of the Dispose.
protected Dispose ( bool disposing ) : void
disposing bool
return void

Publish() public method

Returns a subscription that is ready to publish.
public Publish ( uint clientHandle, System.DateTime deadline, bool requeue, AsyncPublishOperation operation ) : Subscription
clientHandle uint
deadline System.DateTime
requeue bool
operation AsyncPublishOperation
return Subscription

PublishCompleted() public method

Adds a subscription back into the queue because it has more notifications to publish.
public PublishCompleted ( Subscription subscription, bool moreNotifications ) : void
subscription Subscription
moreNotifications bool
return void

PublishTimerExpired() public method

Checks the state of the subscriptions.
public PublishTimerExpired ( ) : void
return void

Remove() public method

Removes a subscription from the publish queue.
public Remove ( Subscription subscription ) : void
subscription Subscription
return void

SessionPublishQueue() public method

Creates a new queue.
public SessionPublishQueue ( IServerInternal server, Session session, int maxPublishRequests ) : System
server IServerInternal
session Session
maxPublishRequests int
return System