Skip to content

Commit af8b7e2

Browse files
committed
Nullability improvements in KafkaProducerFactory classes
Signed-off-by: Soby Chacko <soby.chacko@broadcom.com>
1 parent d966f61 commit af8b7e2

File tree

2 files changed

+18
-17
lines changed

2 files changed

+18
-17
lines changed

spring-kafka/src/main/java/org/springframework/kafka/core/DefaultKafkaProducerFactory.java

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -144,13 +144,13 @@ public class DefaultKafkaProducerFactory<K, V> extends KafkaResourceFactory
144144

145145
private TransactionIdSuffixStrategy transactionIdSuffixStrategy = new DefaultTransactionIdSuffixStrategy(0);
146146

147-
private @Nullable Supplier<Serializer<K>> keySerializerSupplier;
147+
private @Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier;
148148

149-
private @Nullable Supplier<Serializer<V>> valueSerializerSupplier;
149+
private @Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier;
150150

151-
private @Nullable Supplier<Serializer<K>> rawKeySerializerSupplier;
151+
private @Nullable Supplier<@Nullable Serializer<K>> rawKeySerializerSupplier;
152152

153-
private @Nullable Supplier<Serializer<V>> rawValueSerializerSupplier;
153+
private @Nullable Supplier<@Nullable Serializer<V>> rawValueSerializerSupplier;
154154

155155
private Duration physicalCloseTimeout = DEFAULT_PHYSICAL_CLOSE_TIMEOUT;
156156

@@ -230,8 +230,8 @@ public DefaultKafkaProducerFactory(Map<String, Object> configs,
230230
* @since 2.3
231231
*/
232232
public DefaultKafkaProducerFactory(Map<String, Object> configs,
233-
@Nullable Supplier<Serializer<K>> keySerializerSupplier,
234-
@Nullable Supplier<Serializer<V>> valueSerializerSupplier) {
233+
@Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier,
234+
@Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier) {
235235

236236
this(configs, keySerializerSupplier, valueSerializerSupplier, true);
237237
}
@@ -252,8 +252,8 @@ public DefaultKafkaProducerFactory(Map<String, Object> configs,
252252
* @since 2.8.7
253253
*/
254254
public DefaultKafkaProducerFactory(Map<String, Object> configs,
255-
@Nullable Supplier<Serializer<K>> keySerializerSupplier,
256-
@Nullable Supplier<Serializer<V>> valueSerializerSupplier, boolean configureSerializers) {
255+
@Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier,
256+
@Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier, boolean configureSerializers) {
257257

258258
this.configs = new ConcurrentHashMap<>(configs);
259259
this.configureSerializers = configureSerializers;
@@ -269,7 +269,8 @@ public DefaultKafkaProducerFactory(Map<String, Object> configs,
269269
}
270270
}
271271

272-
private @Nullable Supplier<Serializer<K>> keySerializerSupplier(@Nullable Supplier<Serializer<K>> keySerializerSupplier) {
272+
private @Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier(
273+
@Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier) {
273274
this.rawKeySerializerSupplier = keySerializerSupplier;
274275
if (!this.configureSerializers) {
275276
return keySerializerSupplier;
@@ -285,7 +286,8 @@ public DefaultKafkaProducerFactory(Map<String, Object> configs,
285286
};
286287
}
287288

288-
private @Nullable Supplier<Serializer<V>> valueSerializerSupplier(@Nullable Supplier<Serializer<V>> valueSerializerSupplier) {
289+
private @Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier(
290+
@Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier) {
289291
this.rawValueSerializerSupplier = valueSerializerSupplier;
290292
if (!this.configureSerializers) {
291293
return valueSerializerSupplier;
@@ -341,7 +343,7 @@ public void setValueSerializer(@Nullable Serializer<V> valueSerializer) {
341343
* @since 2.8
342344
* @see #setConfigureSerializers(boolean)
343345
*/
344-
public void setKeySerializerSupplier(Supplier<Serializer<K>> keySerializerSupplier) {
346+
public void setKeySerializerSupplier(@Nullable Supplier<@Nullable Serializer<K>> keySerializerSupplier) {
345347
this.keySerializerSupplier = keySerializerSupplier(keySerializerSupplier);
346348
}
347349

@@ -353,7 +355,7 @@ public void setKeySerializerSupplier(Supplier<Serializer<K>> keySerializerSuppli
353355
* @since 2.8
354356
* @see #setConfigureSerializers(boolean)
355357
*/
356-
public void setValueSerializerSupplier(Supplier<Serializer<V>> valueSerializerSupplier) {
358+
public void setValueSerializerSupplier(@Nullable Supplier<@Nullable Serializer<V>> valueSerializerSupplier) {
357359
this.valueSerializerSupplier = valueSerializerSupplier(valueSerializerSupplier);
358360
}
359361

@@ -469,13 +471,13 @@ public Serializer<V> getValueSerializer() {
469471

470472
@Override
471473
@Nullable
472-
public Supplier<Serializer<K>> getKeySerializerSupplier() {
474+
public Supplier<@Nullable Serializer<K>> getKeySerializerSupplier() {
473475
return this.rawKeySerializerSupplier;
474476
}
475477

476478
@Override
477479
@Nullable
478-
public Supplier<Serializer<V>> getValueSerializerSupplier() {
480+
public Supplier<@Nullable Serializer<V>> getValueSerializerSupplier() {
479481
return this.rawValueSerializerSupplier;
480482
}
481483

@@ -696,7 +698,6 @@ public boolean transactionCapable() {
696698
return this.transactionIdPrefix != null;
697699
}
698700

699-
@SuppressWarnings("resource")
700701
@Override
701702
public void destroy() {
702703
CloseSafeProducer<K, V> producerToClose;

spring-kafka/src/main/java/org/springframework/kafka/core/ProducerFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ default Map<String, Object> getConfigurationProperties() {
115115
* @since 2.5
116116
*/
117117
@Nullable
118-
default Supplier<Serializer<V>> getValueSerializerSupplier() {
118+
default Supplier<@Nullable Serializer<V>> getValueSerializerSupplier() {
119119
return () -> null;
120120
}
121121

@@ -126,7 +126,7 @@ default Supplier<Serializer<V>> getValueSerializerSupplier() {
126126
* @since 2.5
127127
*/
128128
@Nullable
129-
default Supplier<Serializer<K>> getKeySerializerSupplier() {
129+
default Supplier<@Nullable Serializer<K>> getKeySerializerSupplier() {
130130
return () -> null;
131131
}
132132

0 commit comments

Comments
 (0)