OlympiaMessageQueueManager

Overview

The OlympiaMessageQueueManager class is a concrete implementation of the MessageQueueManager that uses an Olympia Server instance to store the queued event messages.

Note: Olympia Server is an out-of-process state server so performance of the OlympiaMessageQueueManager can be significantly lower than performance of the MemoryMessageQueueManager.

Location


 

constructor

Creates a new instance of the OlympiaMessageQueueManager class.

 

constructor

 

OlympiaMessageQueueManager()

 

Sub New()

constructor (IContainer)  protected    (declared in MessageQueueManager)

Creates a new instance of the MessageQueueManager and adds it to the provided components container.

 

constructor(container: IContainer)

 

OlympiaMessageQueueManager(IContainer container)

 

Sub New(container As IContainer)

Parameters:

  • container: Components container

Channel

Gets or sets the communication channel used to communicate with the Olympia Server instance.

 

property Channel: ClientChannel read write;

 

ClientChannel Channel { get; set; }

 

Property Channel() As ClientChannel

DestroyMessageQueue

Destroys a message queue assotiated with the provided client Id.

Since Olympia Server implements its own session and message queue lifetime services this method is not implemented in the OlympiaMessageQueueManager class.

 

method DestroyMessageQueue(clientId: Guid)

 

void DestroyMessageQueue(Guid clientId)

 

Sub DestroyMessageQueue(clientId As Guid)

Parameters:

  • clientId: Client Id

Dispose  protected    (declared in MessageQueueManager)

Disposes of the current Messagq Queue Manager instance.

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing: True to release both managed and unmanaged resources; false to release only unmanaged resources

FindMessageQueue

Returns an existing message queue or null if there are no message queues assotiated with the provided client Id.

 

method FindMessageQueue(clientId: Guid): IMessageQueue

 

IMessageQueue FindMessageQueue(Guid clientId)

 

Function FindMessageQueue(clientId As Guid) As IMessageQueue

Parameters:

  • clientId: Client Id

GetMessageQueue

Returns a message queue assotiated with the provided client Id. If there is no message queue assotiated with the provided client Id then a new one queue is created.

 

method GetMessageQueue(clientId: Guid): IMessageQueue

 

IMessageQueue GetMessageQueue(Guid clientId)

 

Function GetMessageQueue(clientId As Guid) As IMessageQueue

Parameters:

  • clientId: Client Id

MaxPoolSize

Gets or sets a size of the communication channel instances pool used to communicate with the Olympia Server instance.

The default value is 1

 

property MaxPoolSize: Int32 read write;

 

Int32 MaxPoolSize { get; set; }

 

Property MaxPoolSize() As Int32

Password

Gets or sets a password used for authentication on the Olympia Server.

 

property Password: String read write;

 

String Password { get; set; }

 

Property Password() As String

QueueMessage (IMessage, Guid)    (declared in MessageQueueManager)

Enqueues serialized server-sent event data in the message queue assotiated with the provided client Id.

 

method QueueMessage(message: IMessage; clientId: Guid)

 

void QueueMessage(IMessage message, Guid clientId)

 

Sub QueueMessage(message As IMessage, clientId As Guid)

Parameters:

  • message: Message containing server-sent data
  • clientId: Client Id

QueueMessage (Stream, Guid)    (declared in MessageQueueManager)

 

method QueueMessage(message: Stream; clientId: Guid)

 

void QueueMessage(Stream message, Guid clientId)

 

Sub QueueMessage(message As Stream, clientId As Guid)

Parameters:

  • message:
  • clientId:

QueueMessage (Stream, IMessageQueue)  protected    (declared in MessageQueueManager)

 

method QueueMessage(message: Stream; queue: IMessageQueue)

 

void QueueMessage(Stream message, IMessageQueue queue)

 

Sub QueueMessage(message As Stream, queue As IMessageQueue)

Parameters:

  • message:
  • queue:

RegisterEventDispatcher    (declared in MessageQueueManager)

Registers an event dispatcher.

When an event data is enqueued Mesasge Queue Manager notifies event dispatchers assotiated with the target client Id, if any are registered. Remoting SDK uses event dispatchers to ensure that super-channels will actively push server-sent events to the connected clients.

 

method RegisterEventDispatcher(dispatcher: IEventDispatcher)

 

void RegisterEventDispatcher(IEventDispatcher dispatcher)

 

Sub RegisterEventDispatcher(dispatcher As IEventDispatcher)

Parameters:

  • dispatcher: Active event dispatcher

UnregisterEventDispatcher    (declared in MessageQueueManager)

 

method UnregisterEventDispatcher(clientId: Guid)

 

void UnregisterEventDispatcher(Guid clientId)

 

Sub UnregisterEventDispatcher(clientId As Guid)

Parameters:

  • clientId:

Username

Gets or sets a user name used for authentication on the Olympia Server.

 

property Username: String read write;

 

String Username { get; set; }

 

Property Username() As String

 

Channel

Gets or sets the communication channel used to communicate with the Olympia Server instance.

 

property Channel: ClientChannel read write;

 

ClientChannel Channel { get; set; }

 

Property Channel() As ClientChannel

MaxPoolSize

Gets or sets a size of the communication channel instances pool used to communicate with the Olympia Server instance.

The default value is 1

 

property MaxPoolSize: Int32 read write;

 

Int32 MaxPoolSize { get; set; }

 

Property MaxPoolSize() As Int32

Password

Gets or sets a password used for authentication on the Olympia Server.

 

property Password: String read write;

 

String Password { get; set; }

 

Property Password() As String

Username

Gets or sets a user name used for authentication on the Olympia Server.

 

property Username: String read write;

 

String Username { get; set; }

 

Property Username() As String

 

constructor

Creates a new instance of the OlympiaMessageQueueManager class.

 

constructor

 

OlympiaMessageQueueManager()

 

Sub New()

constructor (IContainer)  protected    (declared in MessageQueueManager)

Creates a new instance of the MessageQueueManager and adds it to the provided components container.

 

constructor(container: IContainer)

 

OlympiaMessageQueueManager(IContainer container)

 

Sub New(container As IContainer)

Parameters:

  • container: Components container

DestroyMessageQueue

Destroys a message queue assotiated with the provided client Id.

Since Olympia Server implements its own session and message queue lifetime services this method is not implemented in the OlympiaMessageQueueManager class.

 

method DestroyMessageQueue(clientId: Guid)

 

void DestroyMessageQueue(Guid clientId)

 

Sub DestroyMessageQueue(clientId As Guid)

Parameters:

  • clientId: Client Id

Dispose  protected    (declared in MessageQueueManager)

Disposes of the current Messagq Queue Manager instance.

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing: True to release both managed and unmanaged resources; false to release only unmanaged resources

FindMessageQueue

Returns an existing message queue or null if there are no message queues assotiated with the provided client Id.

 

method FindMessageQueue(clientId: Guid): IMessageQueue

 

IMessageQueue FindMessageQueue(Guid clientId)

 

Function FindMessageQueue(clientId As Guid) As IMessageQueue

Parameters:

  • clientId: Client Id

GetMessageQueue

Returns a message queue assotiated with the provided client Id. If there is no message queue assotiated with the provided client Id then a new one queue is created.

 

method GetMessageQueue(clientId: Guid): IMessageQueue

 

IMessageQueue GetMessageQueue(Guid clientId)

 

Function GetMessageQueue(clientId As Guid) As IMessageQueue

Parameters:

  • clientId: Client Id

QueueMessage (IMessage, Guid)    (declared in MessageQueueManager)

Enqueues serialized server-sent event data in the message queue assotiated with the provided client Id.

 

method QueueMessage(message: IMessage; clientId: Guid)

 

void QueueMessage(IMessage message, Guid clientId)

 

Sub QueueMessage(message As IMessage, clientId As Guid)

Parameters:

  • message: Message containing server-sent data
  • clientId: Client Id

QueueMessage (Stream, Guid)    (declared in MessageQueueManager)

 

method QueueMessage(message: Stream; clientId: Guid)

 

void QueueMessage(Stream message, Guid clientId)

 

Sub QueueMessage(message As Stream, clientId As Guid)

Parameters:

  • message:
  • clientId:

QueueMessage (Stream, IMessageQueue)  protected    (declared in MessageQueueManager)

 

method QueueMessage(message: Stream; queue: IMessageQueue)

 

void QueueMessage(Stream message, IMessageQueue queue)

 

Sub QueueMessage(message As Stream, queue As IMessageQueue)

Parameters:

  • message:
  • queue:

RegisterEventDispatcher    (declared in MessageQueueManager)

Registers an event dispatcher.

When an event data is enqueued Mesasge Queue Manager notifies event dispatchers assotiated with the target client Id, if any are registered. Remoting SDK uses event dispatchers to ensure that super-channels will actively push server-sent events to the connected clients.

 

method RegisterEventDispatcher(dispatcher: IEventDispatcher)

 

void RegisterEventDispatcher(IEventDispatcher dispatcher)

 

Sub RegisterEventDispatcher(dispatcher As IEventDispatcher)

Parameters:

  • dispatcher: Active event dispatcher

UnregisterEventDispatcher    (declared in MessageQueueManager)

 

method UnregisterEventDispatcher(clientId: Guid)

 

void UnregisterEventDispatcher(Guid clientId)

 

Sub UnregisterEventDispatcher(clientId As Guid)

Parameters:

  • clientId: