From f79d145b4cd96b67bc7475acc4f2684fd35a9f7f Mon Sep 17 00:00:00 2001 From: divcon Date: Sun, 16 Apr 2023 10:41:32 +0900 Subject: [PATCH] Use putIfAbsent in Netty5HeadersAdapter See gh-30343 --- .../http/client/reactive/Netty5HeadersAdapter.java | 10 ++++------ .../http/server/reactive/Netty5HeadersAdapter.java | 10 ++++------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/http/client/reactive/Netty5HeadersAdapter.java b/spring-web/src/main/java/org/springframework/http/client/reactive/Netty5HeadersAdapter.java index 7bf25d2cfd7..0d87250adbe 100644 --- a/spring-web/src/main/java/org/springframework/http/client/reactive/Netty5HeadersAdapter.java +++ b/spring-web/src/main/java/org/springframework/http/client/reactive/Netty5HeadersAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2022 the original author or authors. + * Copyright 2002-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -91,11 +91,9 @@ class Netty5HeadersAdapter implements MultiValueMap { @Override public Map toSingleValueMap() { Map singleValueMap = CollectionUtils.newLinkedHashMap(this.headers.size()); - this.headers.forEach(entry -> { - if (!singleValueMap.containsKey(entry.getKey())) { - singleValueMap.put(entry.getKey().toString(), entry.getValue().toString()); - } - }); + this.headers.forEach(entry -> + singleValueMap.putIfAbsent(entry.getKey().toString(), entry.getValue().toString()) + ); return singleValueMap; } diff --git a/spring-web/src/main/java/org/springframework/http/server/reactive/Netty5HeadersAdapter.java b/spring-web/src/main/java/org/springframework/http/server/reactive/Netty5HeadersAdapter.java index 35714334a1d..e6d3b26f60a 100644 --- a/spring-web/src/main/java/org/springframework/http/server/reactive/Netty5HeadersAdapter.java +++ b/spring-web/src/main/java/org/springframework/http/server/reactive/Netty5HeadersAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2022 the original author or authors. + * Copyright 2002-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -89,11 +89,9 @@ final class Netty5HeadersAdapter implements MultiValueMap { @Override public Map toSingleValueMap() { Map singleValueMap = CollectionUtils.newLinkedHashMap(this.headers.size()); - this.headers.forEach(entry -> { - if (!singleValueMap.containsKey(entry.getKey())) { - singleValueMap.put(entry.getKey().toString(), entry.getValue().toString()); - } - }); + this.headers.forEach(entry -> + singleValueMap.putIfAbsent(entry.getKey().toString(), entry.getValue().toString()) + ); return singleValueMap; }