Table of Contents

Interface RouterPrx

Namespace
Glacier2
Assembly
Glacier2.dll

The Glacier2 specialization of the RouterPrx interface.

public interface RouterPrx : RouterPrx, ObjectPrx, IEquatable<ObjectPrx>
Inherited Members

Remarks

Use the methods of this interface to invoke operations on a remote Ice object that implements Router. The Slice compiler generated this proxy interface from Slice interface ::Glacier2::Router.

Methods

createSession(string, string, Dictionary<string, string>?)

Creates a session for the client (caller) with the router. If a SessionManagerPrx is configured, a proxy to a SessionPrx object is returned to the client. Otherwise, null is returned and only an internal session (i.e., not visible to the client) is created. If a non-null session proxy is returned, it must be configured to route through the router that created it. This occurs automatically when the router is configured as the client's default router at the time the session proxy is created in the client application; otherwise, the client must configure the session proxy explicitly.

SessionPrx? createSession(string userId, string password, Dictionary<string, string>? context = null)

Parameters

userId string

The user ID.

password string

The password.

context Dictionary<string, string>

The request context.

Returns

SessionPrx

A proxy for the newly created session, or null if no SessionManagerPrx is configured.

Exceptions

CannotCreateSessionException

Thrown when the session cannot be created.

PermissionDeniedException

Thrown when an authentication or authorization failure occurs.

See Also

createSessionAsync(string, string, Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Creates a session for the client (caller) with the router. If a SessionManagerPrx is configured, a proxy to a SessionPrx object is returned to the client. Otherwise, null is returned and only an internal session (i.e., not visible to the client) is created. If a non-null session proxy is returned, it must be configured to route through the router that created it. This occurs automatically when the router is configured as the client's default router at the time the session proxy is created in the client application; otherwise, the client must configure the session proxy explicitly.

Task<SessionPrx?> createSessionAsync(string userId, string password, Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

userId string

The user ID.

password string

The password.

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task<SessionPrx>

A proxy for the newly created session, or null if no SessionManagerPrx is configured.

Exceptions

CannotCreateSessionException

Thrown when the session cannot be created. This exception is provided through the returned task; it's never thrown synchronously.

PermissionDeniedException

Thrown when an authentication or authorization failure occurs. This exception is provided through the returned task; it's never thrown synchronously.

See Also

createSessionFromSecureConnection(Dictionary<string, string>?)

Creates a per-client session with the router. The user is authenticated through the SSL certificate(s) associated with the connection. If an SSLSessionManagerPrx is configured, a proxy to a SessionPrx object is returned to the client. Otherwise, null is returned and only an internal session (i.e., not visible to the client) is created. If a non-null session proxy is returned, it must be configured to route through the router that created it. This occurs automatically when the router is configured as the client's default router at the time the session proxy is created in the client application; otherwise, the client must configure the session proxy explicitly.

SessionPrx? createSessionFromSecureConnection(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Returns

SessionPrx

A proxy for the newly created session, or null if no SSLSessionManagerPrx is configured.

Exceptions

CannotCreateSessionException

Thrown when the session cannot be created.

PermissionDeniedException

Thrown when an authentication or authorization failure occurs.

See Also

createSessionFromSecureConnectionAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Creates a per-client session with the router. The user is authenticated through the SSL certificate(s) associated with the connection. If an SSLSessionManagerPrx is configured, a proxy to a SessionPrx object is returned to the client. Otherwise, null is returned and only an internal session (i.e., not visible to the client) is created. If a non-null session proxy is returned, it must be configured to route through the router that created it. This occurs automatically when the router is configured as the client's default router at the time the session proxy is created in the client application; otherwise, the client must configure the session proxy explicitly.

Task<SessionPrx?> createSessionFromSecureConnectionAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task<SessionPrx>

A proxy for the newly created session, or null if no SSLSessionManagerPrx is configured.

Exceptions

CannotCreateSessionException

Thrown when the session cannot be created. This exception is provided through the returned task; it's never thrown synchronously.

PermissionDeniedException

Thrown when an authentication or authorization failure occurs. This exception is provided through the returned task; it's never thrown synchronously.

See Also

destroySession(Dictionary<string, string>?)

Destroys the session of the caller with this router.

void destroySession(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Exceptions

SessionNotExistException

Thrown when no session exists for the caller (client).

destroySessionAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Destroys the session of the caller with this router.

Task destroySessionAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task

A task that completes when the response is received.

Exceptions

SessionNotExistException

Thrown when no session exists for the caller (client). This exception is provided through the returned task; it's never thrown synchronously.

getACMTimeout(Dictionary<string, string>?)

Gets the idle timeout used by the server-side of the connection.

int getACMTimeout(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Returns

int

The idle timeout (in seconds).

getACMTimeoutAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Gets the idle timeout used by the server-side of the connection.

Task<int> getACMTimeoutAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task<int>

The idle timeout (in seconds).

getCategoryForClient(Dictionary<string, string>?)

Gets a unique category that identifies the client (caller) in the router. This category must be used in the identities of all the client's callback objects.

string getCategoryForClient(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Returns

string

The category. It's an empty string when Glacier2.Server.Endpoints is not configured.

getCategoryForClientAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Gets a unique category that identifies the client (caller) in the router. This category must be used in the identities of all the client's callback objects.

Task<string> getCategoryForClientAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task<string>

The category. It's an empty string when Glacier2.Server.Endpoints is not configured.

getSessionTimeout(Dictionary<string, string>?)

Gets the idle timeout used by the server-side of the connection.

long getSessionTimeout(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Returns

long

The idle timeout (in seconds).

getSessionTimeoutAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Gets the idle timeout used by the server-side of the connection.

Task<long> getSessionTimeoutAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task<long>

The idle timeout (in seconds).

refreshSession(Dictionary<string, string>?)

Keeps the session with this router alive.

[Obsolete("As of Ice 3.8, this operation no longer keeps the session alive; it only verifies that the session exists.")]
void refreshSession(Dictionary<string, string>? context = null)

Parameters

context Dictionary<string, string>

The request context.

Exceptions

SessionNotExistException

Thrown when no session exists for the caller (client).

refreshSessionAsync(Dictionary<string, string>?, IProgress<bool>?, CancellationToken)

Keeps the session with this router alive.

[Obsolete("As of Ice 3.8, this operation no longer keeps the session alive; it only verifies that the session exists.")]
Task refreshSessionAsync(Dictionary<string, string>? context = null, IProgress<bool>? progress = null, CancellationToken cancel = default)

Parameters

context Dictionary<string, string>

The request context.

progress IProgress<bool>

The sent progress provider.

cancel CancellationToken

A cancellation token that receives the cancellation requests.

Returns

Task

A task that completes when the response is received.

Exceptions

SessionNotExistException

Thrown when no session exists for the caller (client). This exception is provided through the returned task; it's never thrown synchronously.