- Overview
- Files
- Types and Members
- Serialization and Contracts
- Validation and Constraints
- Performance Notes
- Package Dependencies
- Diagrams
- Examples
- See Also
The NATS area groups 2 documented types, including NatsClusterMessageBusExtensions, NatsClusterMessageBusOptions. It provides the contracts and implementation used by this part of ThunderPropagator.ClusterMessageBuses.
| File | Primary type(s)/symbol(s) | LOC (approx.) | Responsibility |
|---|---|---|---|
AssemblyInfo.cs |
— | 4 | Contains the assembly info implementation or configuration. |
INatsClusterTransport.cs |
INatsClusterTransport |
29 | Defines INatsClusterTransport and its related behavior. |
NatsClusterDelivery.cs |
NatsClusterDelivery |
15 | Defines NatsClusterDelivery and its related behavior. |
NatsClusterMessageBus.cs |
NatsClusterMessageBus, Log |
153 | Defines NatsClusterMessageBus, Log and its related behavior. |
NatsClusterMessageBus.FanOut.cs |
NatsClusterMessageBus, FanOutSubscription, Log |
139 | Defines NatsClusterMessageBus, FanOutSubscription, Log and its related behavior. |
NatsClusterMessageBus.RequestReply.cs |
NatsClusterMessageBus, Log |
156 | Defines NatsClusterMessageBus, Log and its related behavior. |
NatsClusterMessageBus.Snapshots.cs |
NatsClusterMessageBus, Log |
96 | Defines NatsClusterMessageBus, Log and its related behavior. |
NatsClusterMessageBus.SubscriptionFetch.cs |
NatsClusterMessageBus, Log |
42 | Defines NatsClusterMessageBus, Log and its related behavior. |
NatsClusterMessageBus.SubscriptionSync.cs |
NatsClusterMessageBus, SubscriptionEventSubscription, Log |
136 | Defines NatsClusterMessageBus, SubscriptionEventSubscription, Log and its related behavior. |
NatsClusterMessageBusExtensions.cs |
NatsClusterMessageBusExtensions |
48 | Defines NatsClusterMessageBusExtensions and its related behavior. |
NatsClusterMessageBusOptions.cs |
NatsClusterMessageBusOptions |
28 | Defines NatsClusterMessageBusOptions and its related behavior. |
NatsClusterRequestEnvelope.cs |
NatsClusterRequestEnvelope |
33 | Defines NatsClusterRequestEnvelope and its related behavior. |
NatsClusterRequestKind.cs |
NatsClusterRequestKind |
13 | Defines NatsClusterRequestKind and its related behavior. |
NatsClusterResponseEnvelope.cs |
NatsClusterResponseEnvelope |
22 | Defines NatsClusterResponseEnvelope and its related behavior. |
NatsClusterTransport.cs |
NatsClusterTransport |
48 | Defines NatsClusterTransport and its related behavior. |
NatsSnapshotDeltaPayload.cs |
NatsSnapshotDeltaPayload |
15 | Defines NatsSnapshotDeltaPayload and its related behavior. |
NatsSubjectNaming.cs |
NatsSubjectNaming |
54 | Defines NatsSubjectNaming and its related behavior. |
ThunderPropagator.ClusterMessageBuses.NATS.csproj |
— | 13 | Defines project build targets, dependencies, and package metadata. |
| Type | Kind | Summary | Inherits/Implements | Key Members |
|---|---|---|---|---|
NatsClusterMessageBusExtensions |
class | DI registration for the NATS transport. | — | AddClusterNatsMessageBus(…) |
NatsClusterMessageBusOptions |
class | Configuration for . | — | Url, SubjectPrefix, RequestTimeout |
- Kind: class
- Namespace:
ThunderPropagator.ClusterMessageBuses.NATS - Inherits/implements: None declared
- Attributes: None detected
- Key members:
AddClusterNatsMessageBus(…) - Summary: DI registration for the NATS transport.
- Thread safety: Follow the lifetime and concurrency guarantees of the owning component; no additional guarantee is inferred.
Usage recipe
// Resolve NatsClusterMessageBusExtensions from the configured service container or construct it with its declared dependencies.- Kind: class
- Namespace:
ThunderPropagator.ClusterMessageBuses.NATS - Inherits/implements: None declared
- Attributes: None detected
- Key members:
Url,SubjectPrefix,RequestTimeout - Summary: Configuration for .
- Thread safety: Follow the lifetime and concurrency guarantees of the owning component; no additional guarantee is inferred.
Usage recipe
// Resolve NatsClusterMessageBusOptions from the configured service container or construct it with its declared dependencies.Serialization behavior is part of the public wire or persistence contract in this area. Preserve field names, ordering rules, content negotiation, and backward-compatibility expectations when changing these types.
Inputs are validated at component boundaries. Callers should provide non-null required values and handle domain or argument exceptions without retrying invalid requests unchanged.
This area contains performance-sensitive constructs such as pooled buffers, spans, asynchronous value types, or concurrent collections. Avoid unnecessary allocations and blocking calls on streaming or message-processing paths.
| Package | Version | Description | Links |
|---|---|---|---|
Apache.NMS |
2.2.0 |
External dependency used by the repository. | Registry |
Apache.NMS.ActiveMQ |
2.2.0 |
External dependency used by the repository. | Registry |
AWSSDK.SimpleNotificationService |
4.0.100.6 |
External dependency used by the repository. | Registry |
AWSSDK.SQS |
4.0.100.5 |
External dependency used by the repository. | Registry |
Azure.Messaging.ServiceBus |
7.20.2 |
External dependency used by the repository. | Registry |
Confluent.Kafka |
2.15.0 |
External dependency used by the repository. | Registry |
DotPulsar |
5.3.1 |
External dependency used by the repository. | Registry |
Microsoft.Extensions.Logging.Abstractions |
10.* |
External dependency used by the repository. | Registry |
Microsoft.Extensions.Options |
10.* |
External dependency used by the repository. | Registry |
MQTTnet |
5.2.0.1603 |
External dependency used by the repository. | Registry |
NATS.Net |
3.0.1 |
External dependency used by the repository. | Registry |
Polly.Core |
8.6.4 |
External dependency used by the repository. | Registry |
RabbitMQ.Client |
7.2.1 |
External dependency used by the repository. | Registry |
StackExchange.Redis |
3.0.17 |
External dependency used by the repository. | Registry |
graph TD
Current["NATS"]
Current --> T0["NatsClusterMessageBusExtensions"]
Current --> T1["NatsClusterMessageBusOptions"]
The diagram shows the direct components documented by the NATS area.
Start with NatsClusterMessageBusExtensions as the primary entry point for this folder, then follow its linked contracts and collaborators.