Table of Contents

Class QuicClientTransport

Namespace
IceRpc.Transports.Quic
Assembly
IceRpc.dll

Implements IMultiplexedClientTransport using QUIC.

public class QuicClientTransport : IMultiplexedClientTransport
Inheritance
QuicClientTransport
Implements
Inherited Members

Constructors

QuicClientTransport()

Constructs a QUIC client transport.

public QuicClientTransport()

QuicClientTransport(QuicClientTransportOptions)

Constructs a QUIC client transport.

public QuicClientTransport(QuicClientTransportOptions options)

Parameters

options QuicClientTransportOptions

The options to configure the QUIC 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.