Table of Contents

Class SlicClientTransport

Namespace
IceRpc.Transports.Slic
Assembly
IceRpc.dll

Implements IMultiplexedClientTransport using Slic over a duplex client transport.

public class SlicClientTransport : IMultiplexedClientTransport
Inheritance
SlicClientTransport
Implements
Inherited Members

Constructors

SlicClientTransport(IDuplexClientTransport)

Constructs a Slic client transport.

public SlicClientTransport(IDuplexClientTransport duplexClientTransport)

Parameters

duplexClientTransport IDuplexClientTransport

The duplex client transport.

SlicClientTransport(SlicTransportOptions, IDuplexClientTransport)

Constructs a Slic client transport.

public SlicClientTransport(SlicTransportOptions options, IDuplexClientTransport duplexClientTransport)

Parameters

options SlicTransportOptions

The options to configure the Slic transport.

duplexClientTransport IDuplexClientTransport

The duplex client transport.

Properties

DefaultName

Gets the default transport name.

public string DefaultName { get; }

Property Value

string

The transport accepts transport addresses that use this name as the TransportName. Some transports may accept additional names beyond this default.

Methods

CreateConnection(TransportAddress, MultiplexedConnectionOptions, SslClientAuthenticationOptions?)

Creates a new transport connection to the specified transport address.

public IMultiplexedConnection CreateConnection(TransportAddress transportAddress, MultiplexedConnectionOptions options, SslClientAuthenticationOptions? clientAuthenticationOptions)

Parameters

transportAddress TransportAddress

The transport address to connect to.

options MultiplexedConnectionOptions

The multiplexed connection options.

clientAuthenticationOptions SslClientAuthenticationOptions

The SSL client authentication options.

Returns

IMultiplexedConnection

The new transport connection. This connection is not yet connected.

Remarks

The IceRPC core can call this method concurrently so it must be thread-safe.

IsSslRequired(string?)

Determines whether this transport requires SSL for the specified transport name.

public bool IsSslRequired(string? transportName)

Parameters

transportName string

The transport name, or null which is equivalent to DefaultName.

Returns

bool

true if SSL is required; otherwise, false.

Exceptions

NotSupportedException

Thrown if transportName is not supported by this transport.