Table of Contents

Namespace NATS.Client.Core

Classes

NatsAuthOpts
NatsBufferWriter<T>

Represents a heap-based, array-backed output sink into which T data can be written.

NatsConnection
NatsConnectionFailedException
NatsConnectionPool
NatsDefaultSerializerRegistry
NatsDefaultSerializer<T>

Default serializer for NATS messages.

NatsDeserializeException
NatsEventArgs
NatsException
NatsHeaderParseException
NatsHeaderParser
NatsHeaders

Represents a wrapper for RequestHeaders and ResponseHeaders.

NatsInstrumentationOptions

Options for the OpenTelemetry instrumentation.

NatsJsonContextSerializerRegistry
NatsJsonContextSerializer<T>

Serializer with support for JsonSerializerContext.

NatsLameDuckModeActivatedEventArgs
NatsLogEvents
NatsMessageDroppedEventArgs
NatsMsgBuilder<T>

Builder class for creating NatsMsg<T>

NatsMsgTelemetryExtensions
NatsNoReplyException
NatsNoRespondersException
NatsOpts

Immutable options for NatsConnection, you can configure via with operator.

NatsOptsExtensions
NatsPayloadTooLargeException
NatsProtocolViolationException
NatsPubOpts
NatsRawSerializer<T>

Serializer for binary data.

NatsRequestExtensions
NatsRequestManyExtensions
NatsSerializerBuilder<T>

Represents a builder for creating a chain of serializers for NATS messages.

NatsServerException
NatsSlowConsumerEventArgs
NatsSubBase

The base class for NATS subscriptions.

NatsSubChannelOpts

Options For setting the FullMode and Capacity for a the Channel created for Subscriptions

NatsSubException
NatsSubOpts
NatsSub<T>
NatsTimeoutException
NatsTlsOpts

Immutable options for TlsOptions, you can configure via with operator. These options are ignored in WebSocket connections

NatsUtf8PrimitivesSerializer<T>

UTF8 serializer for strings and all the primitives.

NatsWebSocketOpts

Options for ClientWebSocketOptions

Nuid

Represents a unique identifier generator.

SslClientAuthenticationOptions

Structs

NatsAuthCred
NatsHeaders.Enumerator

Enumerates a NatsHeaders.

NatsInstrumentationContext
NatsMemoryOwner<T>

An IMemoryOwner<T> implementation with an embedded length and a fast Span<T> accessor.

NatsMsg<T>

NATS message structure as defined by the protocol.

NatsResult
NatsResult<T>
NatsStats

Interfaces

INatsClient
INatsConnection
INatsConnectionPool
INatsDeserialize<T>

Deserializer interface for NATS messages.

INatsMsg

Shared contract for all NATS message types.

INatsMsg<T>

This interface provides an optional contract when passing messages to processing methods which is usually helpful in creating test doubles in unit testing.

INatsSerialize<T>

Serializer interface for NATS messages.

INatsSerializerRegistry
INatsSerializer<T>

Serializer interface for NATS messages.

INatsServerInfo
INatsSocketConnection

Represents a socket connection to a NATS server.

INatsSocketConnectionFactory

Factory interface for creating socket connections to NATS servers.

INatsSub<T>
INatsSubscriptionManager

Subscription manager interface.

INatsTlsUpgradeableSocketConnection

Represents a NATS socket connection that can be upgraded to use TLS.

ISocketConnection

Obsolete, use INatsSocketConnection instead

Enums

NatsConnectionState
NatsHeaders.Messages
NatsMemoryOwnerAllocationMode

An enum that indicates a mode to use when allocating buffers.

NatsMsgFlags
NatsRequestReplyMode

Specifies the modes for handling request-reply interactions in NATS.

NatsSubEndReason
TlsMode

TLS mode to use during connection.

Delegates

AsyncEventHandler

An asynchronous event handler.

AsyncEventHandler<TEventArgs>

An asynchronous event handler.