diff --git a/examples/AdminClient/AdminClient.csproj b/examples/AdminClient/AdminClient.csproj index e41312fc5..cb77855fc 100755 --- a/examples/AdminClient/AdminClient.csproj +++ b/examples/AdminClient/AdminClient.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/AvroBlogExamples/AvroBlogExamples.csproj b/examples/AvroBlogExamples/AvroBlogExamples.csproj index 9d8098bbc..b137434bb 100644 --- a/examples/AvroBlogExamples/AvroBlogExamples.csproj +++ b/examples/AvroBlogExamples/AvroBlogExamples.csproj @@ -8,7 +8,7 @@ - + diff --git a/examples/AvroGeneric/AvroGeneric.csproj b/examples/AvroGeneric/AvroGeneric.csproj index d6a8b758a..bbf98213d 100644 --- a/examples/AvroGeneric/AvroGeneric.csproj +++ b/examples/AvroGeneric/AvroGeneric.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/AvroGenericEncryption/AvroGenericEncryption.csproj b/examples/AvroGenericEncryption/AvroGenericEncryption.csproj index 3f51ef674..38526361a 100644 --- a/examples/AvroGenericEncryption/AvroGenericEncryption.csproj +++ b/examples/AvroGenericEncryption/AvroGenericEncryption.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/AvroGenericMigration/AvroGenericMigration.csproj b/examples/AvroGenericMigration/AvroGenericMigration.csproj index ad0e7f0f1..26dd4cefd 100644 --- a/examples/AvroGenericMigration/AvroGenericMigration.csproj +++ b/examples/AvroGenericMigration/AvroGenericMigration.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/AvroSpecific/AvroSpecific.csproj b/examples/AvroSpecific/AvroSpecific.csproj index bfb18902f..cf639dbf6 100644 --- a/examples/AvroSpecific/AvroSpecific.csproj +++ b/examples/AvroSpecific/AvroSpecific.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/AvroSpecificEncryption/AvroSpecificEncryption.csproj b/examples/AvroSpecificEncryption/AvroSpecificEncryption.csproj index c99a75f7d..d9f06206a 100644 --- a/examples/AvroSpecificEncryption/AvroSpecificEncryption.csproj +++ b/examples/AvroSpecificEncryption/AvroSpecificEncryption.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/Configuration/Configuration.csproj b/examples/Configuration/Configuration.csproj index 50f18b8a9..e1ad34e16 100644 --- a/examples/Configuration/Configuration.csproj +++ b/examples/Configuration/Configuration.csproj @@ -8,7 +8,7 @@ - + diff --git a/examples/ConfluentCloud/ConfluentCloud.csproj b/examples/ConfluentCloud/ConfluentCloud.csproj index b1f58a17b..6d42a8f70 100644 --- a/examples/ConfluentCloud/ConfluentCloud.csproj +++ b/examples/ConfluentCloud/ConfluentCloud.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/Consumer/Consumer.csproj b/examples/Consumer/Consumer.csproj index 77723dea5..ff3d80362 100755 --- a/examples/Consumer/Consumer.csproj +++ b/examples/Consumer/Consumer.csproj @@ -8,7 +8,7 @@ - + diff --git a/examples/ExactlyOnce/ExactlyOnce.csproj b/examples/ExactlyOnce/ExactlyOnce.csproj index 19b2a4bd4..3caa11497 100644 --- a/examples/ExactlyOnce/ExactlyOnce.csproj +++ b/examples/ExactlyOnce/ExactlyOnce.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/ExactlyOnceOldBroker/ExactlyOnceOldBroker.csproj b/examples/ExactlyOnceOldBroker/ExactlyOnceOldBroker.csproj index d57e0cd54..49377575f 100644 --- a/examples/ExactlyOnceOldBroker/ExactlyOnceOldBroker.csproj +++ b/examples/ExactlyOnceOldBroker/ExactlyOnceOldBroker.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/JsonEncryption/JsonSerializationEncryption.csproj b/examples/JsonEncryption/JsonSerializationEncryption.csproj index 905140e1e..8777753c4 100644 --- a/examples/JsonEncryption/JsonSerializationEncryption.csproj +++ b/examples/JsonEncryption/JsonSerializationEncryption.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/JsonSerialization/JsonSerialization.csproj b/examples/JsonSerialization/JsonSerialization.csproj index 42b15aca6..167036ceb 100644 --- a/examples/JsonSerialization/JsonSerialization.csproj +++ b/examples/JsonSerialization/JsonSerialization.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/JsonWithReferences/JsonWithReferences.csproj b/examples/JsonWithReferences/JsonWithReferences.csproj index 9ad8665a8..111b9f46b 100644 --- a/examples/JsonWithReferences/JsonWithReferences.csproj +++ b/examples/JsonWithReferences/JsonWithReferences.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/MultiProducer/MultiProducer.csproj b/examples/MultiProducer/MultiProducer.csproj index e925e7207..4988baf84 100644 --- a/examples/MultiProducer/MultiProducer.csproj +++ b/examples/MultiProducer/MultiProducer.csproj @@ -8,7 +8,7 @@ - + diff --git a/examples/OAuthConsumer/OAuthConsumer.csproj b/examples/OAuthConsumer/OAuthConsumer.csproj index 87033599d..1cc8a478d 100644 --- a/examples/OAuthConsumer/OAuthConsumer.csproj +++ b/examples/OAuthConsumer/OAuthConsumer.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/OAuthOIDC/OAuthOIDC.csproj b/examples/OAuthOIDC/OAuthOIDC.csproj index 32fba03bf..e768125e1 100644 --- a/examples/OAuthOIDC/OAuthOIDC.csproj +++ b/examples/OAuthOIDC/OAuthOIDC.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/OAuthProducer/OAuthProducer.csproj b/examples/OAuthProducer/OAuthProducer.csproj index ffc9ebdd5..5ef2806d0 100644 --- a/examples/OAuthProducer/OAuthProducer.csproj +++ b/examples/OAuthProducer/OAuthProducer.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/Producer/Producer.csproj b/examples/Producer/Producer.csproj index 429ecfa31..f394b5ced 100755 --- a/examples/Producer/Producer.csproj +++ b/examples/Producer/Producer.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/Protobuf/Protobuf.csproj b/examples/Protobuf/Protobuf.csproj index be8c99520..fc12c044a 100644 --- a/examples/Protobuf/Protobuf.csproj +++ b/examples/Protobuf/Protobuf.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/ProtobufEncryption/ProtobufEncryption.csproj b/examples/ProtobufEncryption/ProtobufEncryption.csproj index 3ae3013f2..9e280ecd2 100644 --- a/examples/ProtobufEncryption/ProtobufEncryption.csproj +++ b/examples/ProtobufEncryption/ProtobufEncryption.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/TlsAuth/TlsAuth.csproj b/examples/TlsAuth/TlsAuth.csproj index 55d520c89..a0e9ac1cf 100644 --- a/examples/TlsAuth/TlsAuth.csproj +++ b/examples/TlsAuth/TlsAuth.csproj @@ -9,7 +9,7 @@ - + diff --git a/examples/Web/Web.csproj b/examples/Web/Web.csproj index 76da111e2..be3dbf5ca 100644 --- a/examples/Web/Web.csproj +++ b/examples/Web/Web.csproj @@ -5,7 +5,7 @@ - + diff --git a/src/Confluent.Kafka/Config_gen.cs b/src/Confluent.Kafka/Config_gen.cs index 0889c6811..0947e63ac 100644 --- a/src/Confluent.Kafka/Config_gen.cs +++ b/src/Confluent.Kafka/Config_gen.cs @@ -1,29 +1,29 @@ -// *** Auto-generated from librdkafka v2.5.3 *** - do not modify manually. -// -// Copyright 2018-2022 Confluent Inc. -// -// Licensed under the Apache License, Version 2.0 (the 'License'); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an 'AS IS' BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -// Refer to LICENSE for more information. - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; - - -namespace Confluent.Kafka -{ +// *** Auto-generated from librdkafka v2.6.0-RC2 *** - do not modify manually. +// +// Copyright 2018-2022 Confluent Inc. +// +// Licensed under the Apache License, Version 2.0 (the 'License'); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an 'AS IS' BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// Refer to LICENSE for more information. + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + + +namespace Confluent.Kafka +{ /// /// Partitioner enum values /// @@ -254,142 +254,142 @@ public enum ClientDnsLookup /// ResolveCanonicalBootstrapServersOnly } - - /// - /// SaslMechanism enum values - /// - public enum SaslMechanism - { - /// - /// GSSAPI - /// - Gssapi, - - /// - /// PLAIN - /// - Plain, - - /// - /// SCRAM-SHA-256 - /// - ScramSha256, - - /// - /// SCRAM-SHA-512 - /// - ScramSha512, - - /// - /// OAUTHBEARER - /// - OAuthBearer - } - - /// - /// Acks enum values - /// - public enum Acks : int - { - /// - /// None - /// - None = 0, - - /// - /// Leader - /// - Leader = 1, - - /// - /// All - /// - All = -1 - } + + /// + /// SaslMechanism enum values + /// + public enum SaslMechanism + { + /// + /// GSSAPI + /// + Gssapi, + + /// + /// PLAIN + /// + Plain, + + /// + /// SCRAM-SHA-256 + /// + ScramSha256, + + /// + /// SCRAM-SHA-512 + /// + ScramSha512, + + /// + /// OAUTHBEARER + /// + OAuthBearer + } + + /// + /// Acks enum values + /// + public enum Acks : int + { + /// + /// None + /// + None = 0, + + /// + /// Leader + /// + Leader = 1, + + /// + /// All + /// + All = -1 + } /// /// Configuration common to all clients /// public class ClientConfig : Config { - - /// - /// Initialize a new empty instance. - /// - public ClientConfig() : base() { } - - /// - /// Initialize a new instance wrapping - /// an existing instance. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ClientConfig(ClientConfig config) : base(config) { } - - /// - /// Initialize a new instance wrapping - /// an existing key/value pair collection. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ClientConfig(IDictionary config) : base(config) { } - - /// - /// SASL mechanism to use for authentication. Supported: GSSAPI, PLAIN, SCRAM-SHA-256, SCRAM-SHA-512. **NOTE**: Despite the name, you may not configure more than one mechanism. - /// - public SaslMechanism? SaslMechanism - { - get - { - var r = Get("sasl.mechanism"); - if (r == null) { return null; } - if (r == "GSSAPI") { return Confluent.Kafka.SaslMechanism.Gssapi; } - if (r == "PLAIN") { return Confluent.Kafka.SaslMechanism.Plain; } - if (r == "SCRAM-SHA-256") { return Confluent.Kafka.SaslMechanism.ScramSha256; } - if (r == "SCRAM-SHA-512") { return Confluent.Kafka.SaslMechanism.ScramSha512; } - if (r == "OAUTHBEARER") { return Confluent.Kafka.SaslMechanism.OAuthBearer; } - throw new ArgumentException($"Unknown sasl.mechanism value {r}"); - } - set - { - if (value == null) { this.properties.Remove("sasl.mechanism"); } - else if (value == Confluent.Kafka.SaslMechanism.Gssapi) { this.properties["sasl.mechanism"] = "GSSAPI"; } - else if (value == Confluent.Kafka.SaslMechanism.Plain) { this.properties["sasl.mechanism"] = "PLAIN"; } - else if (value == Confluent.Kafka.SaslMechanism.ScramSha256) { this.properties["sasl.mechanism"] = "SCRAM-SHA-256"; } - else if (value == Confluent.Kafka.SaslMechanism.ScramSha512) { this.properties["sasl.mechanism"] = "SCRAM-SHA-512"; } - else if (value == Confluent.Kafka.SaslMechanism.OAuthBearer) { this.properties["sasl.mechanism"] = "OAUTHBEARER"; } - else throw new ArgumentException($"Unknown sasl.mechanism value {value}"); - } - } - - - /// - /// This field indicates the number of acknowledgements the leader broker must receive from ISR brokers - /// before responding to the request: Zero=Broker does not send any response/ack to client, One=The - /// leader will write the record to its local log but will respond without awaiting full acknowledgement - /// from all followers. All=Broker will block until message is committed by all in sync replicas (ISRs). - /// If there are less than min.insync.replicas (broker configuration) in the ISR set the produce request - /// will fail. - /// - public Acks? Acks - { - get - { - var r = Get("acks"); - if (r == null) { return null; } - if (r == "0") { return Confluent.Kafka.Acks.None; } - if (r == "1") { return Confluent.Kafka.Acks.Leader; } - if (r == "-1" || r == "all") { return Confluent.Kafka.Acks.All; } - return (Acks)(int.Parse(r)); - } - set - { - if (value == null) { this.properties.Remove("acks"); } - else if (value == Confluent.Kafka.Acks.None) { this.properties["acks"] = "0"; } - else if (value == Confluent.Kafka.Acks.Leader) { this.properties["acks"] = "1"; } - else if (value == Confluent.Kafka.Acks.All) { this.properties["acks"] = "-1"; } - else { this.properties["acks"] = ((int)value.Value).ToString(); } - } - } - + + /// + /// Initialize a new empty instance. + /// + public ClientConfig() : base() { } + + /// + /// Initialize a new instance wrapping + /// an existing instance. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ClientConfig(ClientConfig config) : base(config) { } + + /// + /// Initialize a new instance wrapping + /// an existing key/value pair collection. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ClientConfig(IDictionary config) : base(config) { } + + /// + /// SASL mechanism to use for authentication. Supported: GSSAPI, PLAIN, SCRAM-SHA-256, SCRAM-SHA-512. **NOTE**: Despite the name, you may not configure more than one mechanism. + /// + public SaslMechanism? SaslMechanism + { + get + { + var r = Get("sasl.mechanism"); + if (r == null) { return null; } + if (r == "GSSAPI") { return Confluent.Kafka.SaslMechanism.Gssapi; } + if (r == "PLAIN") { return Confluent.Kafka.SaslMechanism.Plain; } + if (r == "SCRAM-SHA-256") { return Confluent.Kafka.SaslMechanism.ScramSha256; } + if (r == "SCRAM-SHA-512") { return Confluent.Kafka.SaslMechanism.ScramSha512; } + if (r == "OAUTHBEARER") { return Confluent.Kafka.SaslMechanism.OAuthBearer; } + throw new ArgumentException($"Unknown sasl.mechanism value {r}"); + } + set + { + if (value == null) { this.properties.Remove("sasl.mechanism"); } + else if (value == Confluent.Kafka.SaslMechanism.Gssapi) { this.properties["sasl.mechanism"] = "GSSAPI"; } + else if (value == Confluent.Kafka.SaslMechanism.Plain) { this.properties["sasl.mechanism"] = "PLAIN"; } + else if (value == Confluent.Kafka.SaslMechanism.ScramSha256) { this.properties["sasl.mechanism"] = "SCRAM-SHA-256"; } + else if (value == Confluent.Kafka.SaslMechanism.ScramSha512) { this.properties["sasl.mechanism"] = "SCRAM-SHA-512"; } + else if (value == Confluent.Kafka.SaslMechanism.OAuthBearer) { this.properties["sasl.mechanism"] = "OAUTHBEARER"; } + else throw new ArgumentException($"Unknown sasl.mechanism value {value}"); + } + } + + + /// + /// This field indicates the number of acknowledgements the leader broker must receive from ISR brokers + /// before responding to the request: Zero=Broker does not send any response/ack to client, One=The + /// leader will write the record to its local log but will respond without awaiting full acknowledgement + /// from all followers. All=Broker will block until message is committed by all in sync replicas (ISRs). + /// If there are less than min.insync.replicas (broker configuration) in the ISR set the produce request + /// will fail. + /// + public Acks? Acks + { + get + { + var r = Get("acks"); + if (r == null) { return null; } + if (r == "0") { return Confluent.Kafka.Acks.None; } + if (r == "1") { return Confluent.Kafka.Acks.Leader; } + if (r == "-1" || r == "all") { return Confluent.Kafka.Acks.All; } + return (Acks)(int.Parse(r)); + } + set + { + if (value == null) { this.properties.Remove("acks"); } + else if (value == Confluent.Kafka.Acks.None) { this.properties["acks"] = "0"; } + else if (value == Confluent.Kafka.Acks.Leader) { this.properties["acks"] = "1"; } + else if (value == Confluent.Kafka.Acks.All) { this.properties["acks"] = "-1"; } + else { this.properties["acks"] = ((int)value.Value).ToString(); } + } + } + /// /// Client identifier. /// @@ -1006,124 +1006,124 @@ public Acks? Acks /// public bool? EnableMetricsPush { get { return GetBool("enable.metrics.push"); } set { this.SetObject("enable.metrics.push", value); } } - } - + } + /// /// AdminClient configuration properties /// public class AdminClientConfig : ClientConfig { - - /// - /// Initialize a new empty instance. - /// - public AdminClientConfig() : base() { } - - /// - /// Initialize a new instance wrapping - /// an existing instance. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public AdminClientConfig(ClientConfig config) : base(config) { } - - /// - /// Initialize a new instance wrapping - /// an existing key/value pair collection. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public AdminClientConfig(IDictionary config) : base(config) { } - - /// - /// Check if any properties have been set that have implications for - /// application logic and therefore shouldn't be set via external - /// configuration, independent of the code. Throw an ArgumentException - /// if so. - /// - /// There are currently no such AdminClient configuration properties - /// and this method will never throw. - /// - public AdminClientConfig ThrowIfContainsNonUserConfigurable() - { - // noop - return this; - } - - } - + + /// + /// Initialize a new empty instance. + /// + public AdminClientConfig() : base() { } + + /// + /// Initialize a new instance wrapping + /// an existing instance. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public AdminClientConfig(ClientConfig config) : base(config) { } + + /// + /// Initialize a new instance wrapping + /// an existing key/value pair collection. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public AdminClientConfig(IDictionary config) : base(config) { } + + /// + /// Check if any properties have been set that have implications for + /// application logic and therefore shouldn't be set via external + /// configuration, independent of the code. Throw an ArgumentException + /// if so. + /// + /// There are currently no such AdminClient configuration properties + /// and this method will never throw. + /// + public AdminClientConfig ThrowIfContainsNonUserConfigurable() + { + // noop + return this; + } + + } + /// /// Producer configuration properties /// public class ProducerConfig : ClientConfig { - - /// - /// Initialize a new empty instance. - /// - public ProducerConfig() : base() { } - - /// - /// Initialize a new instance wrapping - /// an existing instance. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ProducerConfig(ClientConfig config) : base(config) { } - - /// - /// Initialize a new instance wrapping - /// an existing key/value pair collection. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ProducerConfig(IDictionary config) : base(config) { } - - /// - /// Check if any properties have been set that have implications for - /// application logic and therefore shouldn't be set via external - /// configuration, independent of the code. Throw an ArgumentException - /// if so. - /// - /// There are currently no such Producer configuration properties - /// and this method will never throw. - /// - public ProducerConfig ThrowIfContainsNonUserConfigurable() - { - // noop - return this; - } - - /// - /// Specifies whether or not the producer should start a background poll - /// thread to receive delivery reports and event notifications. Generally, - /// this should be set to true. If set to false, you will need to call - /// the Poll function manually. - /// - /// default: true - /// importance: low - /// - public bool? EnableBackgroundPoll { get { return GetBool("dotnet.producer.enable.background.poll"); } set { this.SetObject("dotnet.producer.enable.background.poll", value); } } - - /// - /// Specifies whether to enable notification of delivery reports. Typically - /// you should set this parameter to true. Set it to false for "fire and - /// forget" semantics and a small boost in performance. - /// - /// default: true - /// importance: low - /// - public bool? EnableDeliveryReports { get { return GetBool("dotnet.producer.enable.delivery.reports"); } set { this.SetObject("dotnet.producer.enable.delivery.reports", value); } } - - /// - /// A comma separated list of fields that may be optionally set in delivery - /// reports. Disabling delivery report fields that you do not require will - /// improve maximum throughput and reduce memory usage. Allowed values: - /// key, value, timestamp, headers, status, all, none. - /// - /// default: all - /// importance: low - /// - public string DeliveryReportFields { get { return Get("dotnet.producer.delivery.report.fields"); } set { this.SetObject("dotnet.producer.delivery.report.fields", value.ToString()); } } - + + /// + /// Initialize a new empty instance. + /// + public ProducerConfig() : base() { } + + /// + /// Initialize a new instance wrapping + /// an existing instance. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ProducerConfig(ClientConfig config) : base(config) { } + + /// + /// Initialize a new instance wrapping + /// an existing key/value pair collection. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ProducerConfig(IDictionary config) : base(config) { } + + /// + /// Check if any properties have been set that have implications for + /// application logic and therefore shouldn't be set via external + /// configuration, independent of the code. Throw an ArgumentException + /// if so. + /// + /// There are currently no such Producer configuration properties + /// and this method will never throw. + /// + public ProducerConfig ThrowIfContainsNonUserConfigurable() + { + // noop + return this; + } + + /// + /// Specifies whether or not the producer should start a background poll + /// thread to receive delivery reports and event notifications. Generally, + /// this should be set to true. If set to false, you will need to call + /// the Poll function manually. + /// + /// default: true + /// importance: low + /// + public bool? EnableBackgroundPoll { get { return GetBool("dotnet.producer.enable.background.poll"); } set { this.SetObject("dotnet.producer.enable.background.poll", value); } } + + /// + /// Specifies whether to enable notification of delivery reports. Typically + /// you should set this parameter to true. Set it to false for "fire and + /// forget" semantics and a small boost in performance. + /// + /// default: true + /// importance: low + /// + public bool? EnableDeliveryReports { get { return GetBool("dotnet.producer.enable.delivery.reports"); } set { this.SetObject("dotnet.producer.enable.delivery.reports", value); } } + + /// + /// A comma separated list of fields that may be optionally set in delivery + /// reports. Disabling delivery report fields that you do not require will + /// improve maximum throughput and reduce memory usage. Allowed values: + /// key, value, timestamp, headers, status, all, none. + /// + /// default: all + /// importance: low + /// + public string DeliveryReportFields { get { return Get("dotnet.producer.delivery.report.fields"); } set { this.SetObject("dotnet.producer.delivery.report.fields", value.ToString()); } } + /// /// The ack timeout of the producer request in milliseconds. This value is only enforced by the broker and relies on `request.required.acks` being != 0. /// @@ -1260,62 +1260,62 @@ public ProducerConfig ThrowIfContainsNonUserConfigurable() /// public int? StickyPartitioningLingerMs { get { return GetInt("sticky.partitioning.linger.ms"); } set { this.SetObject("sticky.partitioning.linger.ms", value); } } - } - + } + /// /// Consumer configuration properties /// public class ConsumerConfig : ClientConfig { - - /// - /// Initialize a new empty instance. - /// - public ConsumerConfig() : base() { } - - /// - /// Initialize a new instance wrapping - /// an existing instance. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ConsumerConfig(ClientConfig config) : base(config) { } - - /// - /// Initialize a new instance wrapping - /// an existing key/value pair collection. - /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection - /// - public ConsumerConfig(IDictionary config) : base(config) { } - - /// - /// Check if any properties have been set that have implications for - /// application logic and therefore shouldn't be set via external - /// configuration, independent of the code. Throw an ArgumentException - /// if so. - /// - public ConsumerConfig ThrowIfContainsNonUserConfigurable() - { - var toCheck = new string[] { "enable.partition.eof", "partition.assignment.strategy", "enable.auto.commit", "enable.auto.offset.store" }; - this.Where(kv => toCheck.Contains(kv.Key)).ToList() - .ForEach(kv => { throw new ArgumentException($"Consumer config property '{kv.Key}' is not user configurable."); }); - return this; - } - - /// - /// A comma separated list of fields that may be optionally set - /// in - /// objects returned by the - /// - /// method. Disabling fields that you do not require will improve - /// throughput and reduce memory consumption. Allowed values: - /// headers, timestamp, topic, all, none - /// - /// default: all - /// importance: low - /// - public string ConsumeResultFields { set { this.SetObject("dotnet.consumer.consume.result.fields", value); } } - + + /// + /// Initialize a new empty instance. + /// + public ConsumerConfig() : base() { } + + /// + /// Initialize a new instance wrapping + /// an existing instance. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ConsumerConfig(ClientConfig config) : base(config) { } + + /// + /// Initialize a new instance wrapping + /// an existing key/value pair collection. + /// This will change the values "in-place" i.e. operations on this class WILL modify the provided collection + /// + public ConsumerConfig(IDictionary config) : base(config) { } + + /// + /// Check if any properties have been set that have implications for + /// application logic and therefore shouldn't be set via external + /// configuration, independent of the code. Throw an ArgumentException + /// if so. + /// + public ConsumerConfig ThrowIfContainsNonUserConfigurable() + { + var toCheck = new string[] { "enable.partition.eof", "partition.assignment.strategy", "enable.auto.commit", "enable.auto.offset.store" }; + this.Where(kv => toCheck.Contains(kv.Key)).ToList() + .ForEach(kv => { throw new ArgumentException($"Consumer config property '{kv.Key}' is not user configurable."); }); + return this; + } + + /// + /// A comma separated list of fields that may be optionally set + /// in + /// objects returned by the + /// + /// method. Disabling fields that you do not require will improve + /// throughput and reduce memory consumption. Allowed values: + /// headers, timestamp, topic, all, none + /// + /// default: all + /// importance: low + /// + public string ConsumeResultFields { set { this.SetObject("dotnet.consumer.consume.result.fields", value); } } + /// /// Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. /// @@ -1516,6 +1516,6 @@ public ConsumerConfig ThrowIfContainsNonUserConfigurable() /// public bool? CheckCrcs { get { return GetBool("check.crcs"); } set { this.SetObject("check.crcs", value); } } - } - -} + } + +} diff --git a/src/Confluent.Kafka/Confluent.Kafka.csproj b/src/Confluent.Kafka/Confluent.Kafka.csproj index 6d8adf181..c40869171 100644 --- a/src/Confluent.Kafka/Confluent.Kafka.csproj +++ b/src/Confluent.Kafka/Confluent.Kafka.csproj @@ -16,7 +16,7 @@ README.md Confluent.Kafka Confluent.Kafka - 2.5.3 + 2.6.0-RC2 netstandard2.0;netstandard1.3;net462;net6.0 true true @@ -25,7 +25,7 @@ - + None diff --git a/src/Confluent.SchemaRegistry.Encryption.Aws/Confluent.SchemaRegistry.Encryption.Aws.csproj b/src/Confluent.SchemaRegistry.Encryption.Aws/Confluent.SchemaRegistry.Encryption.Aws.csproj index 521b31762..aefa01ee8 100644 --- a/src/Confluent.SchemaRegistry.Encryption.Aws/Confluent.SchemaRegistry.Encryption.Aws.csproj +++ b/src/Confluent.SchemaRegistry.Encryption.Aws/Confluent.SchemaRegistry.Encryption.Aws.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Encryption.Aws Confluent.SchemaRegistry.Encryption.Aws Confluent.SchemaRegistry.Encryption.Aws - 2.5.3 + 2.6.0-RC2 netcoreapp3.1;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Encryption.Azure/Confluent.SchemaRegistry.Encryption.Azure.csproj b/src/Confluent.SchemaRegistry.Encryption.Azure/Confluent.SchemaRegistry.Encryption.Azure.csproj index 73d0fa061..36985ca6a 100644 --- a/src/Confluent.SchemaRegistry.Encryption.Azure/Confluent.SchemaRegistry.Encryption.Azure.csproj +++ b/src/Confluent.SchemaRegistry.Encryption.Azure/Confluent.SchemaRegistry.Encryption.Azure.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Encryption.Azure Confluent.SchemaRegistry.Encryption.Azure Confluent.SchemaRegistry.Encryption.Azure - 2.5.3 + 2.6.0-RC2 netcoreapp3.1;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Encryption.Gcp/Confluent.SchemaRegistry.Encryption.Gcp.csproj b/src/Confluent.SchemaRegistry.Encryption.Gcp/Confluent.SchemaRegistry.Encryption.Gcp.csproj index 5a39c00ea..94f3b9e2a 100644 --- a/src/Confluent.SchemaRegistry.Encryption.Gcp/Confluent.SchemaRegistry.Encryption.Gcp.csproj +++ b/src/Confluent.SchemaRegistry.Encryption.Gcp/Confluent.SchemaRegistry.Encryption.Gcp.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Encryption.Gcp Confluent.SchemaRegistry.Encryption.Gcp Confluent.SchemaRegistry.Encryption.Gcp - 2.5.3 + 2.6.0-RC2 netcoreapp3.1;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Encryption.HcVault/Confluent.SchemaRegistry.Encryption.HcVault.csproj b/src/Confluent.SchemaRegistry.Encryption.HcVault/Confluent.SchemaRegistry.Encryption.HcVault.csproj index e25f9cdc5..1ae18e65e 100644 --- a/src/Confluent.SchemaRegistry.Encryption.HcVault/Confluent.SchemaRegistry.Encryption.HcVault.csproj +++ b/src/Confluent.SchemaRegistry.Encryption.HcVault/Confluent.SchemaRegistry.Encryption.HcVault.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Encryption.HcVault Confluent.SchemaRegistry.Encryption.HcVault Confluent.SchemaRegistry.Encryption.HcVault - 2.5.3 + 2.6.0-RC2 netcoreapp3.1;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Encryption/Confluent.SchemaRegistry.Encryption.csproj b/src/Confluent.SchemaRegistry.Encryption/Confluent.SchemaRegistry.Encryption.csproj index 6db698b2f..6bc44aef3 100644 --- a/src/Confluent.SchemaRegistry.Encryption/Confluent.SchemaRegistry.Encryption.csproj +++ b/src/Confluent.SchemaRegistry.Encryption/Confluent.SchemaRegistry.Encryption.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Encryption Confluent.SchemaRegistry.Encryption Confluent.SchemaRegistry.Encryption - 2.5.3 + 2.6.0-RC2 netcoreapp3.1;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Rules/Confluent.SchemaRegistry.Rules.csproj b/src/Confluent.SchemaRegistry.Rules/Confluent.SchemaRegistry.Rules.csproj index 2c176a1da..b8a0f5fa8 100644 --- a/src/Confluent.SchemaRegistry.Rules/Confluent.SchemaRegistry.Rules.csproj +++ b/src/Confluent.SchemaRegistry.Rules/Confluent.SchemaRegistry.Rules.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Rules Confluent.SchemaRegistry.Rules Confluent.SchemaRegistry.Rules - 2.5.3 + 2.6.0-RC2 net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Serdes.Avro/Confluent.SchemaRegistry.Serdes.Avro.csproj b/src/Confluent.SchemaRegistry.Serdes.Avro/Confluent.SchemaRegistry.Serdes.Avro.csproj index 63f1314bd..2b856763c 100644 --- a/src/Confluent.SchemaRegistry.Serdes.Avro/Confluent.SchemaRegistry.Serdes.Avro.csproj +++ b/src/Confluent.SchemaRegistry.Serdes.Avro/Confluent.SchemaRegistry.Serdes.Avro.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Serdes.Avro Confluent.SchemaRegistry.Serdes.Avro Confluent.SchemaRegistry.Serdes.Avro - 2.5.3 + 2.6.0-RC2 netstandard2.0;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Serdes.Json/Confluent.SchemaRegistry.Serdes.Json.csproj b/src/Confluent.SchemaRegistry.Serdes.Json/Confluent.SchemaRegistry.Serdes.Json.csproj index d30b2c98a..1ea8e647e 100644 --- a/src/Confluent.SchemaRegistry.Serdes.Json/Confluent.SchemaRegistry.Serdes.Json.csproj +++ b/src/Confluent.SchemaRegistry.Serdes.Json/Confluent.SchemaRegistry.Serdes.Json.csproj @@ -15,7 +15,7 @@ Confluent.SchemaRegistry.Serdes.Json Confluent.SchemaRegistry.Serdes.Json Confluent.SchemaRegistry.Serdes.Json - 2.5.3 + 2.6.0-RC2 netstandard2.0;net6.0 true true diff --git a/src/Confluent.SchemaRegistry.Serdes.Protobuf/Confluent.SchemaRegistry.Serdes.Protobuf.csproj b/src/Confluent.SchemaRegistry.Serdes.Protobuf/Confluent.SchemaRegistry.Serdes.Protobuf.csproj index eac6d3f79..32f845b9a 100644 --- a/src/Confluent.SchemaRegistry.Serdes.Protobuf/Confluent.SchemaRegistry.Serdes.Protobuf.csproj +++ b/src/Confluent.SchemaRegistry.Serdes.Protobuf/Confluent.SchemaRegistry.Serdes.Protobuf.csproj @@ -16,7 +16,7 @@ Confluent.SchemaRegistry.Serdes.Protobuf Confluent.SchemaRegistry.Serdes.Protobuf Confluent.SchemaRegistry.Serdes.Protobuf - 2.5.3 + 2.6.0-RC2 netstandard2.0;net6.0 true true diff --git a/src/Confluent.SchemaRegistry/Confluent.SchemaRegistry.csproj b/src/Confluent.SchemaRegistry/Confluent.SchemaRegistry.csproj index 2e7193bdb..eb07c7ecd 100644 --- a/src/Confluent.SchemaRegistry/Confluent.SchemaRegistry.csproj +++ b/src/Confluent.SchemaRegistry/Confluent.SchemaRegistry.csproj @@ -16,7 +16,7 @@ Confluent.SchemaRegistry Confluent.SchemaRegistry Confluent.SchemaRegistry - 2.5.3 + 2.6.0-RC2 netstandard2.0;net6.0 true true