diff --git a/tests/NATS.Net.DocsExamples/.editorconfig b/tests/NATS.Net.DocsExamples/.editorconfig new file mode 100644 index 000000000..45896327b --- /dev/null +++ b/tests/NATS.Net.DocsExamples/.editorconfig @@ -0,0 +1,4 @@ +[*.cs] +csharp_style_var_for_built_in_types = false:warning +csharp_style_var_when_type_is_apparent = false:warning +csharp_style_var_elsewhere = false:warning diff --git a/tests/NATS.Net.DocsExamples/Advanced/IntroPage.cs b/tests/NATS.Net.DocsExamples/Advanced/IntroPage.cs index 9158a601d..f7eeca2d1 100644 --- a/tests/NATS.Net.DocsExamples/Advanced/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/Advanced/IntroPage.cs @@ -22,15 +22,15 @@ public async Task Run() { #region lowlevel-sub - await using var nc = new NatsConnection(); + await using NatsConnection nc = new NatsConnection(); // Connections are lazy, so we need to connect explicitly // to avoid any races between subscription and publishing. await nc.ConnectAsync(); - await using var sub = await nc.SubscribeCoreAsync("foo"); + await using INatsSub sub = await nc.SubscribeCoreAsync("foo"); - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { Console.WriteLine($" Publishing {i}..."); await nc.PublishAsync("foo", i); @@ -41,7 +41,7 @@ public async Task Run() // Messages have been collected in the subscription internal channel // now we can drain them - await foreach (var msg in sub.Msgs.ReadAllAsync()) + await foreach (NatsMsg msg in sub.Msgs.ReadAllAsync()) { Console.WriteLine($"Received {msg.Subject}: {msg.Data}\n"); if (msg.Data == -1) @@ -56,7 +56,7 @@ public async Task Run() { #region ping - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); TimeSpan rtt = await nc.PingAsync(); @@ -66,18 +66,18 @@ public async Task Run() { #region logging - using var loggerFactory = LoggerFactory.Create(configure: builder => builder.AddConsole()); + using ILoggerFactory loggerFactory = LoggerFactory.Create(configure: builder => builder.AddConsole()); - var opts = new NatsOpts { LoggerFactory = loggerFactory }; + NatsOpts opts = new NatsOpts { LoggerFactory = loggerFactory }; - await using var nc = new NatsClient(opts); + await using NatsClient nc = new NatsClient(opts); #endregion } { #region opts - var opts = new NatsOpts + NatsOpts opts = new NatsOpts { // You need to set pending in the constructor and not use // the option here, as it will be ignored. @@ -89,19 +89,19 @@ public async Task Run() // ... }; - await using var nc = new NatsClient(opts, pending: BoundedChannelFullMode.DropNewest); + await using NatsClient nc = new NatsClient(opts, pending: BoundedChannelFullMode.DropNewest); #endregion } { #region opts2 - var opts = new NatsOpts + NatsOpts opts = new NatsOpts { // Your custom options }; - await using var nc = new NatsConnection(opts); + await using NatsConnection nc = new NatsConnection(opts); #endregion } } diff --git a/tests/NATS.Net.DocsExamples/Advanced/SecurityPage.cs b/tests/NATS.Net.DocsExamples/Advanced/SecurityPage.cs index 7bc549986..1b022f675 100644 --- a/tests/NATS.Net.DocsExamples/Advanced/SecurityPage.cs +++ b/tests/NATS.Net.DocsExamples/Advanced/SecurityPage.cs @@ -15,7 +15,7 @@ public async Task Run() { #region user-pass - var opts = new NatsOpts + NatsOpts opts = new NatsOpts { AuthOpts = NatsAuthOpts.Default with { @@ -24,13 +24,13 @@ public async Task Run() }, }; - await using var nats = new NatsClient(opts); + await using NatsClient nats = new NatsClient(opts); #endregion } { #region tls-implicit - var opts = new NatsOpts + NatsOpts opts = new NatsOpts { TlsOpts = new NatsTlsOpts { @@ -38,13 +38,13 @@ public async Task Run() }, }; - await using var nats = new NatsClient(opts); + await using NatsClient nats = new NatsClient(opts); #endregion } { #region tls-mutual - var opts = new NatsOpts + NatsOpts opts = new NatsOpts { TlsOpts = new NatsTlsOpts { @@ -54,7 +54,7 @@ public async Task Run() }, }; - await using var nats = new NatsClient(opts); + await using NatsClient nats = new NatsClient(opts); #endregion } } diff --git a/tests/NATS.Net.DocsExamples/Advanced/SerializationPage.cs b/tests/NATS.Net.DocsExamples/Advanced/SerializationPage.cs index 8f88b0e0e..a8550387d 100644 --- a/tests/NATS.Net.DocsExamples/Advanced/SerializationPage.cs +++ b/tests/NATS.Net.DocsExamples/Advanced/SerializationPage.cs @@ -31,9 +31,9 @@ public async Task Run() #region default // Set your custom serializer registry as the default for the connection. - var opts = NatsOpts.Default with { SerializerRegistry = new MyProtoBufSerializerRegistry() }; + NatsOpts opts = NatsOpts.Default with { SerializerRegistry = new MyProtoBufSerializerRegistry() }; - await using var nc = new NatsClient(opts); + await using NatsClient nc = new NatsClient(opts); #endregion } @@ -42,15 +42,15 @@ public async Task Run() #region my-data-usage // Set the custom serializer registry as the default for the connection. - var myRegistry = new NatsJsonContextSerializerRegistry(MyJsonContext.Default, OtherJsonContext.Default); + NatsJsonContextSerializerRegistry myRegistry = new NatsJsonContextSerializerRegistry(MyJsonContext.Default, OtherJsonContext.Default); - var opts = new NatsOpts { SerializerRegistry = myRegistry }; + NatsOpts opts = new NatsOpts { SerializerRegistry = myRegistry }; - await using var nc = new NatsClient(opts); + await using NatsClient nc = new NatsClient(opts); - var subscriber = Task.Run(async () => + Task subscriber = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("foo")) + await foreach (NatsMsg msg in nc.SubscribeAsync("foo")) { // Outputs 'MyData { Id = 1, Name = bar }' Console.WriteLine(msg.Data); @@ -71,13 +71,13 @@ public async Task Run() Console.WriteLine(" #region my-data-publish"); #region my-data-publish - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - var serializer = new NatsJsonContextSerializer(MyJsonContext.Default); + NatsJsonContextSerializer serializer = new NatsJsonContextSerializer(MyJsonContext.Default); - var subscriber = Task.Run(async () => + Task subscriber = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("foo", serializer: serializer)) + await foreach (NatsMsg msg in nc.SubscribeAsync("foo", serializer: serializer)) { // Outputs 'MyData { Id = 1, Name = bar }' Console.WriteLine(msg.Data); @@ -98,13 +98,13 @@ public async Task Run() Console.WriteLine(" #region custom"); #region custom - var opts = new NatsOpts { SerializerRegistry = new MyProtoBufSerializerRegistry() }; + NatsOpts opts = new NatsOpts { SerializerRegistry = new MyProtoBufSerializerRegistry() }; - await using var nc = new NatsClient(opts); + await using NatsClient nc = new NatsClient(opts); - var subscriber = Task.Run(async () => + Task subscriber = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("foo")) + await foreach (NatsMsg msg in nc.SubscribeAsync("foo")) { // Outputs '{ "id": 42, "name": "Marvin" }' Console.WriteLine(msg.Data); @@ -125,13 +125,13 @@ public async Task Run() Console.WriteLine(" #region chain"); #region chain - var opts = new NatsOpts { SerializerRegistry = new MixedSerializerRegistry() }; + NatsOpts opts = new NatsOpts { SerializerRegistry = new MixedSerializerRegistry() }; - await using var nc = new NatsClient(opts); + await using NatsClient nc = new NatsClient(opts); - var subscriber1 = Task.Run(async () => + Task subscriber1 = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("greet")) + await foreach (NatsMsg msg in nc.SubscribeAsync("greet")) { // Outputs '{ "id": 42, "name": "Marvin" }' Console.WriteLine(msg.Data); @@ -139,9 +139,9 @@ public async Task Run() } }); - var subscriber2 = Task.Run(async () => + Task subscriber2 = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("data")) + await foreach (NatsMsg msg in nc.SubscribeAsync("data")) { // Outputs 'MyData { Id = 1, Name = bar }' Console.WriteLine(msg.Data); @@ -166,19 +166,19 @@ public async Task Run() #region buffers // The default serializer knows how to deal with binary data types like NatsMemoryOwner. // So, you can use it without specifying a serializer. - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - var subscriber = Task.Run(async () => + Task subscriber = Task.Run(async () => { // The default serializer knows how to deal with binary data types like NatsMemoryOwner. - await foreach (var msg in nc.SubscribeAsync>("foo")) + await foreach (NatsMsg> msg in nc.SubscribeAsync>("foo")) { // Check for the end of messages. if (msg.Data.Length == 0) break; // Dispose the memory owner after using it so it can be returned to the pool. - using var memoryOwner = msg.Data; + using NatsMemoryOwner memoryOwner = msg.Data; // Outputs 'Hi' Console.WriteLine(Encoding.ASCII.GetString(memoryOwner.Memory.Span)); @@ -190,8 +190,8 @@ public async Task Run() // Don't reuse NatsBufferWriter, it's disposed and returned to the pool // by the publisher after being written to the network. - var bw = new NatsBufferWriter(); - var memory = bw.GetMemory(2); + NatsBufferWriter bw = new NatsBufferWriter(); + Memory memory = bw.GetMemory(2); memory.Span[0] = (byte)'H'; memory.Span[1] = (byte)'i'; bw.Advance(2); diff --git a/tests/NATS.Net.DocsExamples/Core/IntroPage.cs b/tests/NATS.Net.DocsExamples/Core/IntroPage.cs index d49d3a798..a166aded1 100644 --- a/tests/NATS.Net.DocsExamples/Core/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/Core/IntroPage.cs @@ -2,9 +2,7 @@ #pragma warning disable SA1124 #pragma warning disable SA1509 -using Microsoft.Extensions.Logging; using NATS.Client.Core; -using NATS.Client.Serializers.Json; namespace NATS.Net.DocsExamples.Core; @@ -20,9 +18,9 @@ public async Task Run() subscription = Task.Run(async () => { #region sub - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - await foreach (var msg in nc.SubscribeAsync("bar.>")) + await foreach (NatsMsg msg in nc.SubscribeAsync("bar.>")) { if (msg.Subject == "bar.exit") break; @@ -37,9 +35,9 @@ public async Task Run() { #region pub - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { Console.WriteLine($" Publishing {i}..."); await nc.PublishAsync($"bar.baz.{i}", new Bar(Id: i, Name: "Baz")); @@ -48,7 +46,7 @@ public async Task Run() await nc.PublishAsync("bar.exit"); #endregion - for (var i = 0; i < 3; i++) + for (int i = 0; i < 3; i++) { await Task.Delay(250); await nc.PublishAsync("bar.exit"); diff --git a/tests/NATS.Net.DocsExamples/Core/PubSubPage.cs b/tests/NATS.Net.DocsExamples/Core/PubSubPage.cs index 0b31d365b..72c606d9a 100644 --- a/tests/NATS.Net.DocsExamples/Core/PubSubPage.cs +++ b/tests/NATS.Net.DocsExamples/Core/PubSubPage.cs @@ -16,11 +16,11 @@ public async Task Run() { #region pubsub - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - var subscription = Task.Run(async () => + Task subscription = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync("foo")) + await foreach (NatsMsg msg in nc.SubscribeAsync("foo")) { Console.WriteLine($"Received {msg.Subject}: {msg.Data}\n"); @@ -32,7 +32,7 @@ public async Task Run() // Give subscription time to start await Task.Delay(1000); - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { Console.WriteLine($" Publishing {i}..."); await nc.PublishAsync("foo", i); diff --git a/tests/NATS.Net.DocsExamples/Core/QueuePage.cs b/tests/NATS.Net.DocsExamples/Core/QueuePage.cs index eba85bdda..c75d5ced6 100644 --- a/tests/NATS.Net.DocsExamples/Core/QueuePage.cs +++ b/tests/NATS.Net.DocsExamples/Core/QueuePage.cs @@ -19,22 +19,22 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.Core.QueuePage"); #region queue - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); // Create a cancellation token source to stop the subscriptions - using var cts = new CancellationTokenSource(); + using CancellationTokenSource cts = new CancellationTokenSource(); - var replyTasks = new List(); + List replyTasks = new List(); - for (var i = 0; i < 3; i++) + for (int i = 0; i < 3; i++) { // Create three subscriptions all on the same queue group // Create a background message loop for every subscription - var replyTaskId = i; + int replyTaskId = i; replyTasks.Add(Task.Run(async () => { // Retrieve messages until unsubscribed - await foreach (var msg in nc.SubscribeAsync("math.double", queueGroup: "maths-service", cancellationToken: cts.Token)) + await foreach (NatsMsg msg in nc.SubscribeAsync("math.double", queueGroup: "maths-service", cancellationToken: cts.Token)) { Console.WriteLine($"[{replyTaskId}] Received request: {msg.Data}"); await msg.ReplyAsync($"Answer is: {2 * msg.Data}"); @@ -48,7 +48,7 @@ public async Task Run() await Task.Delay(1000); // Send a few requests - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { NatsMsg reply = await nc.RequestAsync("math.double", i); Console.WriteLine($"Reply: '{reply.Data}'"); diff --git a/tests/NATS.Net.DocsExamples/Core/ReqRepPage.cs b/tests/NATS.Net.DocsExamples/Core/ReqRepPage.cs index f49b41fe6..6906de762 100644 --- a/tests/NATS.Net.DocsExamples/Core/ReqRepPage.cs +++ b/tests/NATS.Net.DocsExamples/Core/ReqRepPage.cs @@ -19,15 +19,15 @@ public async Task Run() Console.WriteLine("____________________________________________________________"); Console.WriteLine("NATS.Net.DocsExamples.Core.ReqRepPage"); - await using var nc1 = new NatsClient(); - var myMathService = new MyMathService(nc1); + await using NatsClient nc1 = new NatsClient(); + MyMathService myMathService = new MyMathService(nc1); await myMathService.StartAsync(CancellationToken.None); await Task.Delay(1000); { #region reqrep - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); NatsMsg reply = await nc.RequestAsync("math.double", 2); @@ -51,11 +51,11 @@ public MyMathService(INatsClient natsClient) protected override async Task ExecuteAsync(CancellationToken stoppingToken) { - await foreach (var msg in _natsClient.SubscribeAsync("math.double", cancellationToken: stoppingToken)) + await foreach (NatsMsg msg in _natsClient.SubscribeAsync("math.double", cancellationToken: stoppingToken)) { Console.WriteLine($"Received request: {msg.Data}"); - var result = 2 * msg.Data; + int result = 2 * msg.Data; await msg.ReplyAsync(result, cancellationToken: stoppingToken); } diff --git a/tests/NATS.Net.DocsExamples/IndexPagePub.cs b/tests/NATS.Net.DocsExamples/IndexPagePub.cs index 08505d307..3529a25e6 100644 --- a/tests/NATS.Net.DocsExamples/IndexPagePub.cs +++ b/tests/NATS.Net.DocsExamples/IndexPagePub.cs @@ -12,18 +12,18 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.IndexPagePub"); { #region demo - await using var nc = new NatsClient("demo.nats.io"); + await using NatsClient nc = new NatsClient("demo.nats.io"); Console.Write("Enter your room: "); - var room = Console.ReadLine(); + string? room = Console.ReadLine(); Console.Write("Enter your name: "); - var name = Console.ReadLine(); + string? name = Console.ReadLine(); while (true) { Console.Write("Enter a message to publish: "); - var message = Console.ReadLine(); + string? message = Console.ReadLine(); await nc.PublishAsync(subject: $"hello.{room}.{name}", data: message); } #endregion diff --git a/tests/NATS.Net.DocsExamples/IndexPageSub.cs b/tests/NATS.Net.DocsExamples/IndexPageSub.cs index 6c230c658..4e7edd641 100644 --- a/tests/NATS.Net.DocsExamples/IndexPageSub.cs +++ b/tests/NATS.Net.DocsExamples/IndexPageSub.cs @@ -1,3 +1,5 @@ +using NATS.Client.Core; + #pragma warning disable SA1123 #pragma warning disable SA1124 #pragma warning disable SA1509 @@ -12,14 +14,14 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.IndexPageSub"); { #region demo - await using var nc = new NatsClient("demo.nats.io"); + await using NatsClient nc = new NatsClient("demo.nats.io"); Console.Write("Enter your room: "); - var room = Console.ReadLine(); + string? room = Console.ReadLine(); Console.WriteLine($"Listening for messages on 'hello.{room}.>'"); - await foreach (var msg in nc.SubscribeAsync(subject: $"hello.{room}.>")) + await foreach (NatsMsg msg in nc.SubscribeAsync(subject: $"hello.{room}.>")) { Console.WriteLine($"Received: {msg.Subject}: {msg.Data}"); } diff --git a/tests/NATS.Net.DocsExamples/IntroPage.cs b/tests/NATS.Net.DocsExamples/IntroPage.cs index 7cd0c22e4..e4978a1f8 100644 --- a/tests/NATS.Net.DocsExamples/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/IntroPage.cs @@ -17,14 +17,14 @@ public async Task Run() { #region core-nats - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); // We will use a cancellation token to stop the subscription - using var cts = new CancellationTokenSource(); + using CancellationTokenSource cts = new CancellationTokenSource(); - var subscription = Task.Run(async () => + Task subscription = Task.Run(async () => { - await foreach (var msg in nc.SubscribeAsync(subject: "greet.*", cancellationToken: cts.Token)) + await foreach (NatsMsg msg in nc.SubscribeAsync(subject: "greet.*", cancellationToken: cts.Token)) { Console.WriteLine($"Received: {msg.Subject}: {msg.Data}"); } @@ -33,7 +33,7 @@ public async Task Run() // Give subscription time to start await Task.Delay(1000); - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { await nc.PublishAsync(subject: $"greet.{i}", data: $"Hello, World! {i}"); } @@ -50,8 +50,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("shop_orders"); await Task.Delay(1000); } @@ -61,8 +61,8 @@ public async Task Run() try { - await using var nats = new NatsConnection(); - var js = new NatsJSContext(nats); + await using NatsConnection nats = new NatsConnection(); + NatsJSContext js = new NatsJSContext(nats); await js.DeleteStreamAsync("ORDERS"); await Task.Delay(1000); } @@ -72,17 +72,17 @@ public async Task Run() { #region jetstream - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); // Create a stream to store the messages those subjects start with "orders." await js.CreateStreamAsync(new StreamConfig(name: "ORDERS", subjects: ["orders.>"])); - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { // Publish a message to the stream. The message will be stored in the stream // because the published subject matches one of the the stream's subjects. - var ack = await js.PublishAsync(subject: $"orders.new.{i}", data: $"order {i}"); + PubAckResponse ack = await js.PublishAsync(subject: $"orders.new.{i}", data: $"order {i}"); // Ensure the message is stored in the stream. // Returned ack makes the JetStream publish different from the core publish. @@ -90,12 +90,12 @@ public async Task Run() } // Create a consumer to receive the messages - var consumer = await js.CreateOrUpdateConsumerAsync("ORDERS", new ConsumerConfig("order_processor")); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync("ORDERS", new ConsumerConfig("order_processor")); // We will use a cancellation token to stop the consume loop - using var cts = new CancellationTokenSource(TimeSpan.FromSeconds(3)); + using CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(3)); - await foreach (var jsMsg in consumer.ConsumeAsync(cancellationToken: cts.Token)) + await foreach (NatsJSMsg jsMsg in consumer.ConsumeAsync(cancellationToken: cts.Token)) { Console.WriteLine($"Processed: {jsMsg.Subject}: {jsMsg.Data} ({jsMsg.Metadata?.Sequence.Stream}/{jsMsg.Metadata?.NumPending})"); diff --git a/tests/NATS.Net.DocsExamples/JetStream/ConsumePage.cs b/tests/NATS.Net.DocsExamples/JetStream/ConsumePage.cs index a8de763f0..f97c336b5 100644 --- a/tests/NATS.Net.DocsExamples/JetStream/ConsumePage.cs +++ b/tests/NATS.Net.DocsExamples/JetStream/ConsumePage.cs @@ -1,6 +1,5 @@ // ReSharper disable SuggestVarOrType_Elsewhere -using System.Text.Json.Serialization; using NATS.Client.Core; using NATS.Client.JetStream; using NATS.Client.JetStream.Models; @@ -23,8 +22,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("ORDERS"); await Task.Delay(1000); } @@ -34,8 +33,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("SHOP_ORDERS"); await Task.Delay(1000); } @@ -44,15 +43,15 @@ public async Task Run() } #region js - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); await js.CreateStreamAsync(new StreamConfig(name: "ORDERS", subjects: ["orders.>"])); - var consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", new ConsumerConfig("order_processor")); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", new ConsumerConfig("order_processor")); // Publish new order messages - var ack = await js.PublishAsync(subject: "orders.new.1", data: new Order { Id = 1 }); + PubAckResponse ack = await js.PublishAsync(subject: "orders.new.1", data: new Order { Id = 1 }); // If you want exceptions to be thrown, you can use EnsureSuccess() method instead if (!ack.IsSuccess()) @@ -63,7 +62,7 @@ public async Task Run() { #region consumer-next - var next = await consumer.NextAsync(); + NatsJSMsg? next = await consumer.NextAsync(); if (next is { } msg) { @@ -74,10 +73,10 @@ public async Task Run() } { - var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); - var cancellationToken = cts.Token; + CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); + CancellationToken cancellationToken = cts.Token; #region consumer-fetch - await foreach (var msg in consumer.FetchAsync(new NatsJSFetchOpts { MaxMsgs = 1000 }).WithCancellation(cancellationToken)) + await foreach (NatsJSMsg msg in consumer.FetchAsync(new NatsJSFetchOpts { MaxMsgs = 1000 }).WithCancellation(cancellationToken)) { // Process message await msg.AckAsync(); @@ -88,11 +87,11 @@ public async Task Run() } { - var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); - var cancellationToken = cts.Token; + CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); + CancellationToken cancellationToken = cts.Token; #region consumer-consume // Continuously consume a batch of messages (1000 by default) - await foreach (var msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) + await foreach (NatsJSMsg msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) { // Process message await msg.AckAsync(); @@ -103,8 +102,8 @@ public async Task Run() } { - var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); - var cancellationToken = cts.Token; + CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); + CancellationToken cancellationToken = cts.Token; #region consumer-consume-error while (!cancellationToken.IsCancellationRequested) @@ -113,7 +112,7 @@ public async Task Run() { await consumer.RefreshAsync(cancellationToken); // or try to recreate consumer - await foreach (var msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) + await foreach (NatsJSMsg msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) { // Process message await msg.AckAsync(cancellationToken: cancellationToken); diff --git a/tests/NATS.Net.DocsExamples/JetStream/IntroPage.cs b/tests/NATS.Net.DocsExamples/JetStream/IntroPage.cs index 6fa108227..c99f671f1 100644 --- a/tests/NATS.Net.DocsExamples/JetStream/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/JetStream/IntroPage.cs @@ -20,8 +20,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("SHOP_ORDERS"); await Task.Delay(1000); } @@ -31,8 +31,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("ORDERS"); await Task.Delay(1000); } @@ -41,8 +41,8 @@ public async Task Run() } #region js-connection - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); #endregion #region js-stream @@ -51,25 +51,25 @@ public async Task Run() #region js-publish // Publish new order messages - for (var i = 0; i < 10; i++) + for (int i = 0; i < 10; i++) { // Notice we're using JetStream context to publish and receive ACKs - var ack = await js.PublishAsync($"orders.new.{i}", new Order { Id = i }); + PubAckResponse ack = await js.PublishAsync($"orders.new.{i}", new Order { Id = i }); ack.EnsureSuccess(); } #endregion #region js-consumer - var consumer = await js.CreateOrUpdateConsumerAsync(stream: "SHOP_ORDERS", new ConsumerConfig("order_processor")); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync(stream: "SHOP_ORDERS", new ConsumerConfig("order_processor")); #endregion - var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); - var cancellationToken = cts.Token; + CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); + CancellationToken cancellationToken = cts.Token; #region consumer-consume - await foreach (var msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) + await foreach (NatsJSMsg msg in consumer.ConsumeAsync().WithCancellation(cancellationToken)) { - var order = msg.Data; + Order? order = msg.Data; Console.WriteLine($"Processing {msg.Subject} {order}..."); await msg.AckAsync(cancellationToken: cancellationToken); // this loop never ends unless there is an error diff --git a/tests/NATS.Net.DocsExamples/JetStream/ManagingPage.cs b/tests/NATS.Net.DocsExamples/JetStream/ManagingPage.cs index 25a91f357..6e06c81cd 100644 --- a/tests/NATS.Net.DocsExamples/JetStream/ManagingPage.cs +++ b/tests/NATS.Net.DocsExamples/JetStream/ManagingPage.cs @@ -18,9 +18,9 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.JetStream.ManagingPage"); #region js - await using var nc = new NatsClient(); + await using NatsClient nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + INatsJSContext js = nc.CreateJetStreamContext(); #endregion try @@ -48,21 +48,21 @@ public async Task Run() { #region consumer-create // Create or get a consumer - var consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", new ConsumerConfig("order_processor")); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", new ConsumerConfig("order_processor")); #endregion } { #region consumer-get // Get an existing consumer - var consumer = await js.GetConsumerAsync(stream: "ORDERS", consumer: "order_processor"); + INatsJSConsumer consumer = await js.GetConsumerAsync(stream: "ORDERS", consumer: "order_processor"); #endregion } { #region consumer-durable // Create a durable consumer - var durableConfig = new ConsumerConfig("durable_processor"); + ConsumerConfig durableConfig = new ConsumerConfig("durable_processor"); // Same as above durableConfig = new ConsumerConfig @@ -71,7 +71,7 @@ public async Task Run() DurableName = "durable_processor", }; - var consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", durableConfig); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", durableConfig); Console.WriteLine($"Consumer Name: {consumer.Info.Name}"); // durable_processor Console.WriteLine($"Consumer DurableName: {consumer.Info.Config.DurableName}"); // durable_processor @@ -81,9 +81,9 @@ public async Task Run() { #region consumer-ephemeral // Create an ephemeral consumer by not setting durable name - var ephemeralConfig = new ConsumerConfig(); + ConsumerConfig ephemeralConfig = new ConsumerConfig(); - var consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", ephemeralConfig); + INatsJSConsumer consumer = await js.CreateOrUpdateConsumerAsync(stream: "ORDERS", ephemeralConfig); Console.WriteLine($"Consumer Name: {consumer.Info.Name}"); // e.g. Z8YlwrP9 (server assigned random name) #endregion diff --git a/tests/NATS.Net.DocsExamples/JetStream/PublishPage.cs b/tests/NATS.Net.DocsExamples/JetStream/PublishPage.cs index d1917915d..26da828df 100644 --- a/tests/NATS.Net.DocsExamples/JetStream/PublishPage.cs +++ b/tests/NATS.Net.DocsExamples/JetStream/PublishPage.cs @@ -20,8 +20,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("SHOP_ORDERS"); await Task.Delay(1000); } @@ -31,8 +31,8 @@ public async Task Run() try { - await using var nats1 = new NatsConnection(); - var js1 = new NatsJSContext(nats1); + await using NatsConnection nats1 = new NatsConnection(); + NatsJSContext js1 = new NatsJSContext(nats1); await js1.DeleteStreamAsync("ORDERS"); await Task.Delay(1000); } @@ -42,21 +42,21 @@ public async Task Run() { #region js - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); - await js.CreateStreamAsync(new StreamConfig(name: "ORDERS", subjects: new[] { "orders.>" })); + await js.CreateStreamAsync(new StreamConfig(name: "ORDERS", subjects: ["orders.>"])); #endregion } { #region publish - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); - var order = new Order { Id = 1 }; + Order order = new Order { Id = 1 }; - var ack = await js.PublishAsync("orders.new.1", order); + PubAckResponse ack = await js.PublishAsync("orders.new.1", order); ack.EnsureSuccess(); #endregion @@ -64,12 +64,12 @@ public async Task Run() { #region publish-duplicate - await using var nc = new NatsClient(); - var js = nc.CreateJetStreamContext(); + await using NatsClient nc = new NatsClient(); + INatsJSContext js = nc.CreateJetStreamContext(); - var order = new Order { Id = 1 }; + Order order = new Order { Id = 1 }; - var ack = await js.PublishAsync(subject: "orders.new.1", data: order, opts: new NatsJSPubOpts { MsgId = "1" }); + PubAckResponse ack = await js.PublishAsync(subject: "orders.new.1", data: order, opts: new NatsJSPubOpts { MsgId = "1" }); if (ack.Duplicate) { // A message with the same ID was published before diff --git a/tests/NATS.Net.DocsExamples/KeyValueStore/IntroPage.cs b/tests/NATS.Net.DocsExamples/KeyValueStore/IntroPage.cs index 8bbf2b13c..cb8605bdb 100644 --- a/tests/NATS.Net.DocsExamples/KeyValueStore/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/KeyValueStore/IntroPage.cs @@ -1,11 +1,7 @@ // ReSharper disable SuggestVarOrType_Elsewhere -using System.Text.Json.Serialization; -using NATS.Client.Core; using NATS.Client.JetStream; -using NATS.Client.JetStream.Models; using NATS.Client.KeyValueStore; -using NATS.Client.Serializers.Json; #pragma warning disable SA1123 #pragma warning disable SA1124 @@ -22,8 +18,8 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.KeyValueStore.IntroPage"); #region kv - await using var nc = new NatsClient(); - var kv = nc.CreateKeyValueStoreContext(); + await using NatsClient nc = new NatsClient(); + INatsKVContext kv = nc.CreateKeyValueStoreContext(); #endregion try @@ -36,27 +32,27 @@ public async Task Run() } #region store - var store = await kv.CreateStoreAsync("SHOP_ORDERS"); + INatsKVStore store = await kv.CreateStoreAsync("SHOP_ORDERS"); #endregion { #region put await store.PutAsync("order-1", new ShopOrder(Id: 1)); - var entry = await store.GetEntryAsync("order-1"); + NatsKVEntry entry = await store.GetEntryAsync("order-1"); Console.WriteLine($"[GET] {entry.Value}"); #endregion } { - var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); - var cancellationToken = cts.Token; + CancellationTokenSource cts = new CancellationTokenSource(TimeSpan.FromSeconds(1)); + CancellationToken cancellationToken = cts.Token; try { #region watch - await foreach (var entry in store.WatchAsync(cancellationToken: cancellationToken)) + await foreach (NatsKVEntry entry in store.WatchAsync(cancellationToken: cancellationToken)) { Console.WriteLine($"[RCV] {entry}"); } diff --git a/tests/NATS.Net.DocsExamples/ObjectStore/IntroPage.cs b/tests/NATS.Net.DocsExamples/ObjectStore/IntroPage.cs index 7421324a2..72bebeefc 100644 --- a/tests/NATS.Net.DocsExamples/ObjectStore/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/ObjectStore/IntroPage.cs @@ -1,12 +1,8 @@ // ReSharper disable SuggestVarOrType_Elsewhere -using System.Text.Json.Serialization; -using NATS.Client.Core; using NATS.Client.JetStream; -using NATS.Client.JetStream.Models; -using NATS.Client.KeyValueStore; using NATS.Client.ObjectStore; -using NATS.Client.Serializers.Json; +using NATS.Client.ObjectStore.Models; #pragma warning disable SA1123 #pragma warning disable SA1124 @@ -23,8 +19,8 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.ObjectStore.IntroPage"); #region obj - await using var nc = new NatsClient(); - var obj = nc.CreateObjectStoreContext(); + await using NatsClient nc = new NatsClient(); + INatsObjContext obj = nc.CreateObjectStoreContext(); #endregion try @@ -37,7 +33,7 @@ public async Task Run() } #region store - var store = await obj.CreateObjectStoreAsync("test-bucket"); + INatsObjStore store = await obj.CreateObjectStoreAsync("test-bucket"); #endregion await File.WriteAllTextAsync("data.bin", "tests"); @@ -50,7 +46,7 @@ public async Task Run() #endregion #region info - var metadata = await store.GetInfoAsync("my/random/data.bin"); + ObjectMetadata metadata = await store.GetInfoAsync("my/random/data.bin"); Console.WriteLine("Metadata:"); Console.WriteLine($" Bucket: {metadata.Bucket}"); diff --git a/tests/NATS.Net.DocsExamples/Services/IntroPage.cs b/tests/NATS.Net.DocsExamples/Services/IntroPage.cs index 8497f57f4..f902055dc 100644 --- a/tests/NATS.Net.DocsExamples/Services/IntroPage.cs +++ b/tests/NATS.Net.DocsExamples/Services/IntroPage.cs @@ -1,12 +1,5 @@ // ReSharper disable SuggestVarOrType_Elsewhere -using System.Text.Json.Serialization; -using NATS.Client.Core; -using NATS.Client.JetStream; -using NATS.Client.JetStream.Models; -using NATS.Client.KeyValueStore; -using NATS.Client.ObjectStore; -using NATS.Client.Serializers.Json; using NATS.Client.Services; #pragma warning disable SA1123 @@ -25,12 +18,12 @@ public async Task Run() Console.WriteLine("NATS.Net.DocsExamples.Services.IntroPage"); #region svc - await using var nc = new NatsClient(); - var svc = nc.CreateServicesContext(); + await using NatsClient nc = new NatsClient(); + INatsSvcContext svc = nc.CreateServicesContext(); #endregion #region add - await using var testService = await svc.AddServiceAsync("test", "1.0.0"); + await using INatsSvcServer testService = await svc.AddServiceAsync("test", "1.0.0"); #endregion #region endpoint @@ -55,7 +48,7 @@ await testService.AddEndpointAsync(name: "divide42", handler: async m => #endregion #region grp - var grp1 = await testService.AddGroupAsync("grp1"); + NatsSvcServer.Group grp1 = await testService.AddGroupAsync("grp1"); await grp1.AddEndpointAsync(name: "ep1", handler: async m => { // handle message