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

Implements

 

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

GlobalMessageQueueManager    (declared in MessageQueueManager)

Global registration point for Message Queue Manager. This static property provides easy access to the globally used Interface IMessageQueueManager instance.

 

class property GlobalMessageQueueManager: IMessageQueueManager read;

 

class IMessageQueueManager GlobalMessageQueueManager { get; }

 

Shared Property ReadOnly GlobalMessageQueueManager As IMessageQueueManager

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

RegisterMessageQueueManager  protected    (declared in MessageQueueManager)

Registers provided Interface IMessageQueueManager instance as the globally used Message Queue Manager.

 

class method RegisterMessageQueueManager(manager: IMessageQueueManager)

 

static void RegisterMessageQueueManager(IMessageQueueManager manager)

 

Shared Sub RegisterMessageQueueManager(manager As IMessageQueueManager)

Parameters:


UnregisterEventDispatcher    (declared in MessageQueueManager)

 

method UnregisterEventDispatcher(clientId: Guid)

 

void UnregisterEventDispatcher(Guid clientId)

 

Sub UnregisterEventDispatcher(clientId As Guid)

Parameters:

  • clientId:

UnregisterMessageQueueManager  protected    (declared in MessageQueueManager)

Unregisters provided Interface IMessageQueueManager instance as the globally used Message Queue Manager.

 

class method UnregisterMessageQueueManager(manager: IMessageQueueManager)

 

static void UnregisterMessageQueueManager(IMessageQueueManager manager)

 

Shared Sub UnregisterMessageQueueManager(manager As IMessageQueueManager)

Parameters:


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

GlobalMessageQueueManager    (declared in MessageQueueManager)

Global registration point for Message Queue Manager. This static property provides easy access to the globally used Interface IMessageQueueManager instance.

 

class property GlobalMessageQueueManager: IMessageQueueManager read;

 

class IMessageQueueManager GlobalMessageQueueManager { get; }

 

Shared Property ReadOnly GlobalMessageQueueManager As IMessageQueueManager

 

RegisterMessageQueueManager  protected    (declared in MessageQueueManager)

Registers provided Interface IMessageQueueManager instance as the globally used Message Queue Manager.

 

class method RegisterMessageQueueManager(manager: IMessageQueueManager)

 

static void RegisterMessageQueueManager(IMessageQueueManager manager)

 

Shared Sub RegisterMessageQueueManager(manager As IMessageQueueManager)

Parameters:


UnregisterMessageQueueManager  protected    (declared in MessageQueueManager)

Unregisters provided Interface IMessageQueueManager instance as the globally used Message Queue Manager.

 

class method UnregisterMessageQueueManager(manager: IMessageQueueManager)

 

static void UnregisterMessageQueueManager(IMessageQueueManager manager)

 

Shared Sub UnregisterMessageQueueManager(manager As IMessageQueueManager)

Parameters:

 

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:

See Also