Skip to content

Commit 77b7f2f

Browse files
committed
Switch to Spring Framework SNAPSHOTs
See gh-30624
1 parent 4421156 commit 77b7f2f

File tree

17 files changed

+70
-90
lines changed

17 files changed

+70
-90
lines changed

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cloudfoundry/reactive/ReactiveCloudFoundrySecurityService.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2021 the original author or authors.
2+
* Copyright 2012-2022 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@
3131
import org.springframework.boot.actuate.autoconfigure.cloudfoundry.CloudFoundryAuthorizationException.Reason;
3232
import org.springframework.core.ParameterizedTypeReference;
3333
import org.springframework.http.HttpStatus;
34+
import org.springframework.http.HttpStatusCode;
3435
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
3536
import org.springframework.util.Assert;
3637
import org.springframework.web.reactive.function.client.WebClient;
@@ -90,7 +91,7 @@ Mono<AccessLevel> getAccessLevel(String token, String applicationId) throws Clou
9091

9192
private Throwable mapError(Throwable throwable) {
9293
if (throwable instanceof WebClientResponseException) {
93-
HttpStatus statusCode = ((WebClientResponseException) throwable).getStatusCode();
94+
HttpStatusCode statusCode = ((WebClientResponseException) throwable).getStatusCode();
9495
if (statusCode.equals(HttpStatus.FORBIDDEN)) {
9596
return new CloudFoundryAuthorizationException(Reason.ACCESS_DENIED, "Access denied");
9697
}

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/elasticsearch/ElasticsearchReactiveHealthIndicator.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
import org.springframework.boot.actuate.health.Status;
2727
import org.springframework.core.ParameterizedTypeReference;
2828
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
29+
import org.springframework.http.HttpStatus;
30+
import org.springframework.http.HttpStatusCode;
2931
import org.springframework.web.reactive.function.client.ClientResponse;
3032
import org.springframework.web.reactive.function.client.WebClient;
3133

@@ -62,12 +64,16 @@ private Mono<Health> getHealth(Health.Builder builder, WebClient webClient) {
6264
}
6365

6466
private Mono<Health> doHealthCheck(Health.Builder builder, ClientResponse response) {
65-
if (response.statusCode().is2xxSuccessful()) {
67+
HttpStatusCode httpStatusCode = response.statusCode();
68+
HttpStatus httpStatus = HttpStatus.resolve(httpStatusCode.value());
69+
if (httpStatusCode.is2xxSuccessful()) {
6670
return response.bodyToMono(STRING_OBJECT_MAP).map((body) -> getHealth(builder, body));
6771
}
6872
builder.down();
69-
builder.withDetail("statusCode", response.rawStatusCode());
70-
builder.withDetail("reasonPhrase", response.statusCode().getReasonPhrase());
73+
builder.withDetail("statusCode", httpStatusCode.value());
74+
if (httpStatus != null) {
75+
builder.withDetail("reasonPhrase", httpStatus.getReasonPhrase());
76+
}
7177
return response.releaseBody().thenReturn(builder.build());
7278
}
7379

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/client/RestTemplateExchangeTags.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ private static String getStatusMessage(ClientHttpResponse response) {
9797
if (response == null) {
9898
return "CLIENT_ERROR";
9999
}
100-
return String.valueOf(response.getRawStatusCode());
100+
return String.valueOf(response.getStatusCode().value());
101101
}
102102
catch (IOException ex) {
103103
return "IO_ERROR";
@@ -128,7 +128,7 @@ public static Tag clientName(HttpRequest request) {
128128
public static Tag outcome(ClientHttpResponse response) {
129129
try {
130130
if (response != null) {
131-
return Outcome.forStatus(response.getRawStatusCode()).asTag();
131+
return Outcome.forStatus(response.getStatusCode().value()).asTag();
132132
}
133133
}
134134
catch (IOException ex) {

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/WebClientExchangeTags.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ private static String extractPath(String url) {
8686
*/
8787
public static Tag status(ClientResponse response, Throwable throwable) {
8888
if (response != null) {
89-
return Tag.of("status", String.valueOf(response.rawStatusCode()));
89+
return Tag.of("status", String.valueOf(response.statusCode().value()));
9090
}
9191
if (throwable != null) {
9292
return (throwable instanceof IOException) ? IO_ERROR : CLIENT_ERROR;
@@ -117,7 +117,7 @@ public static Tag clientName(ClientRequest request) {
117117
* @since 2.2.0
118118
*/
119119
public static Tag outcome(ClientResponse response) {
120-
Outcome outcome = (response != null) ? Outcome.forStatus(response.rawStatusCode()) : Outcome.UNKNOWN;
120+
Outcome outcome = (response != null) ? Outcome.forStatus(response.statusCode().value()) : Outcome.UNKNOWN;
121121
return outcome.asTag();
122122
}
123123

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/server/WebFluxTags.java

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
import org.springframework.boot.actuate.metrics.http.Outcome;
2727
import org.springframework.http.HttpStatus;
28-
import org.springframework.http.server.reactive.ServerHttpResponse;
28+
import org.springframework.http.HttpStatusCode;
2929
import org.springframework.util.StringUtils;
3030
import org.springframework.web.reactive.HandlerMapping;
3131
import org.springframework.web.server.ServerWebExchange;
@@ -80,7 +80,7 @@ public static Tag method(ServerWebExchange exchange) {
8080
* @return the status tag derived from the response status
8181
*/
8282
public static Tag status(ServerWebExchange exchange) {
83-
HttpStatus status = exchange.getResponse().getStatusCode();
83+
HttpStatusCode status = exchange.getResponse().getStatusCode();
8484
if (status == null) {
8585
status = HttpStatus.OK;
8686
}
@@ -122,7 +122,7 @@ public static Tag uri(ServerWebExchange exchange, boolean ignoreTrailingSlash) {
122122
}
123123
return Tag.of("uri", patternString);
124124
}
125-
HttpStatus status = exchange.getResponse().getStatusCode();
125+
HttpStatusCode status = exchange.getResponse().getStatusCode();
126126
if (status != null) {
127127
if (status.is3xxRedirection()) {
128128
return URI_REDIRECTION;
@@ -181,19 +181,9 @@ public static Tag outcome(ServerWebExchange exchange, Throwable exception) {
181181
return Outcome.UNKNOWN.asTag();
182182
}
183183
}
184-
Integer statusCode = extractStatusCode(exchange);
185-
Outcome outcome = (statusCode != null) ? Outcome.forStatus(statusCode) : Outcome.SUCCESS;
184+
HttpStatusCode statusCode = exchange.getResponse().getStatusCode();
185+
Outcome outcome = (statusCode != null) ? Outcome.forStatus(statusCode.value()) : Outcome.SUCCESS;
186186
return outcome.asTag();
187187
}
188188

189-
private static Integer extractStatusCode(ServerWebExchange exchange) {
190-
ServerHttpResponse response = exchange.getResponse();
191-
Integer statusCode = response.getRawStatusCode();
192-
if (statusCode != null) {
193-
return statusCode;
194-
}
195-
HttpStatus status = response.getStatusCode();
196-
return (status != null) ? status.value() : null;
197-
}
198-
199189
}

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/elasticsearch/ElasticsearchReactiveHealthIndicatorTests.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
package org.springframework.boot.actuate.elasticsearch;
1818

19+
import java.time.Duration;
1920
import java.util.Map;
2021

2122
import okhttp3.mockwebserver.MockResponse;
@@ -44,6 +45,8 @@
4445
*/
4546
class ElasticsearchReactiveHealthIndicatorTests {
4647

48+
private static final Duration TIMEOUT = Duration.ofSeconds(5);
49+
4750
private MockWebServer server;
4851

4952
private ElasticsearchReactiveHealthIndicator healthIndicator;
@@ -65,23 +68,23 @@ void shutdown() throws Exception {
6568
@Test
6669
void elasticsearchIsUp() {
6770
setupMockResponse(200, "green");
68-
Health health = this.healthIndicator.health().block();
71+
Health health = this.healthIndicator.health().block(TIMEOUT);
6972
assertThat(health.getStatus()).isEqualTo(Status.UP);
7073
assertHealthDetailsWithStatus(health.getDetails(), "green");
7174
}
7275

7376
@Test
7477
void elasticsearchWithYellowStatusIsUp() {
7578
setupMockResponse(200, "yellow");
76-
Health health = this.healthIndicator.health().block();
79+
Health health = this.healthIndicator.health().block(TIMEOUT);
7780
assertThat(health.getStatus()).isEqualTo(Status.UP);
7881
assertHealthDetailsWithStatus(health.getDetails(), "yellow");
7982
}
8083

8184
@Test
8285
void elasticsearchIsDown() throws Exception {
8386
this.server.shutdown();
84-
Health health = this.healthIndicator.health().block();
87+
Health health = this.healthIndicator.health().block(TIMEOUT);
8588
assertThat(health.getStatus()).isEqualTo(Status.DOWN);
8689
assertThat(health.getDetails().get("error")).asString()
8790
.contains("org.springframework.data.elasticsearch.client.NoReachableHostException");
@@ -93,7 +96,7 @@ void elasticsearchIsDownByResponseCode() {
9396
// to "/"
9497
this.server.enqueue(new MockResponse().setResponseCode(HttpStatus.OK.value()));
9598
this.server.enqueue(new MockResponse().setResponseCode(HttpStatus.INTERNAL_SERVER_ERROR.value()));
96-
Health health = this.healthIndicator.health().block();
99+
Health health = this.healthIndicator.health().block(TIMEOUT);
97100
assertThat(health.getStatus()).isEqualTo(Status.DOWN);
98101
assertThat(health.getDetails().get("statusCode")).asString().isEqualTo("500");
99102
assertThat(health.getDetails().get("reasonPhrase")).asString().isEqualTo("Internal Server Error");
@@ -102,7 +105,7 @@ void elasticsearchIsDownByResponseCode() {
102105
@Test
103106
void elasticsearchIsOutOfServiceByStatus() {
104107
setupMockResponse(200, "red");
105-
Health health = this.healthIndicator.health().block();
108+
Health health = this.healthIndicator.health().block(TIMEOUT);
106109
assertThat(health.getStatus()).isEqualTo(Status.OUT_OF_SERVICE);
107110
assertHealthDetailsWithStatus(health.getDetails(), "red");
108111
}

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/client/RestTemplateExchangeTagsTests.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.junit.jupiter.api.Test;
2424

2525
import org.springframework.http.HttpStatus;
26+
import org.springframework.http.HttpStatusCode;
2627
import org.springframework.http.client.ClientHttpRequest;
2728
import org.springframework.http.client.ClientHttpResponse;
2829
import org.springframework.mock.http.client.MockClientHttpResponse;
@@ -83,23 +84,23 @@ void outcomeTagIsServerErrorWhenResponseIs5xx() {
8384
@Test
8485
void outcomeTagIsUnknownWhenResponseThrowsIOException() throws Exception {
8586
ClientHttpResponse response = mock(ClientHttpResponse.class);
86-
given(response.getRawStatusCode()).willThrow(IOException.class);
87+
given(response.getStatusCode()).willThrow(IOException.class);
8788
Tag tag = RestTemplateExchangeTags.outcome(response);
8889
assertThat(tag.getValue()).isEqualTo("UNKNOWN");
8990
}
9091

9192
@Test
9293
void outcomeTagIsClientErrorWhenResponseIsNonStandardInClientSeries() throws IOException {
9394
ClientHttpResponse response = mock(ClientHttpResponse.class);
94-
given(response.getRawStatusCode()).willReturn(490);
95+
given(response.getStatusCode()).willReturn(HttpStatusCode.valueOf(490));
9596
Tag tag = RestTemplateExchangeTags.outcome(response);
9697
assertThat(tag.getValue()).isEqualTo("CLIENT_ERROR");
9798
}
9899

99100
@Test
100101
void outcomeTagIsUnknownWhenResponseStatusIsInUnknownSeries() throws IOException {
101102
ClientHttpResponse response = mock(ClientHttpResponse.class);
102-
given(response.getRawStatusCode()).willReturn(701);
103+
given(response.getStatusCode()).willReturn(HttpStatusCode.valueOf(701));
103104
Tag tag = RestTemplateExchangeTags.outcome(response);
104105
assertThat(tag.getValue()).isEqualTo("UNKNOWN");
105106
}

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/DefaultWebClientExchangeTagsProviderTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ void setup() {
5454
this.request = ClientRequest.create(HttpMethod.GET, URI.create("https://example.org/projects/spring-boot"))
5555
.attribute(URI_TEMPLATE_ATTRIBUTE, "https://example.org/projects/{project}").build();
5656
this.response = mock(ClientResponse.class);
57-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
57+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
5858
}
5959

6060
@Test

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/MetricsWebClientFilterFunctionTests.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2021 the original author or authors.
2+
* Copyright 2012-2022 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -75,7 +75,7 @@ void setup() {
7575
void filterShouldRecordTimer() {
7676
ClientRequest request = ClientRequest
7777
.create(HttpMethod.GET, URI.create("https://example.com/projects/spring-boot")).build();
78-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
78+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
7979
this.filterFunction.filter(request, this.exchange).block(Duration.ofSeconds(5));
8080
assertThat(this.registry.get("http.client.requests")
8181
.tags("method", "GET", "uri", "/projects/spring-boot", "status", "200").timer().count()).isEqualTo(1);
@@ -86,7 +86,7 @@ void filterWhenUriTemplatePresentShouldRecordTimer() {
8686
ClientRequest request = ClientRequest
8787
.create(HttpMethod.GET, URI.create("https://example.com/projects/spring-boot"))
8888
.attribute(URI_TEMPLATE_ATTRIBUTE, "/projects/{project}").build();
89-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
89+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
9090
this.filterFunction.filter(request, this.exchange).block(Duration.ofSeconds(5));
9191
assertThat(this.registry.get("http.client.requests")
9292
.tags("method", "GET", "uri", "/projects/{project}", "status", "200").timer().count()).isEqualTo(1);
@@ -120,7 +120,7 @@ void filterWhenExceptionThrownShouldRecordTimer() {
120120
void filterWhenCancelThrownShouldRecordTimer() {
121121
ClientRequest request = ClientRequest
122122
.create(HttpMethod.GET, URI.create("https://example.com/projects/spring-boot")).build();
123-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
123+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
124124
Mono<ClientResponse> filter = this.filterFunction.filter(request, this.exchange);
125125
StepVerifier.create(filter).thenCancel().verify(Duration.ofSeconds(5));
126126
assertThat(this.registry.get("http.client.requests")
@@ -135,7 +135,7 @@ void filterWhenCancelThrownShouldRecordTimer() {
135135
void filterWhenCancelAfterResponseThrownShouldNotRecordTimer() {
136136
ClientRequest request = ClientRequest
137137
.create(HttpMethod.GET, URI.create("https://example.com/projects/spring-boot")).build();
138-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
138+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
139139
Mono<ClientResponse> filter = this.filterFunction.filter(request, this.exchange);
140140
StepVerifier.create(filter).expectNextCount(1).thenCancel().verify(Duration.ofSeconds(5));
141141
assertThat(this.registry.get("http.client.requests")

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/WebClientExchangeTagsTests.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525

2626
import org.springframework.http.HttpMethod;
2727
import org.springframework.http.HttpStatus;
28+
import org.springframework.http.HttpStatusCode;
2829
import org.springframework.web.reactive.function.client.ClientRequest;
2930
import org.springframework.web.reactive.function.client.ClientResponse;
3031
import org.springframework.web.reactive.function.client.WebClient;
@@ -93,7 +94,7 @@ void clientName() {
9394

9495
@Test
9596
void status() {
96-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
97+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
9798
assertThat(WebClientExchangeTags.status(this.response, null)).isEqualTo(Tag.of("status", "200"));
9899
}
99100

@@ -110,7 +111,7 @@ void statusWhenClientException() {
110111

111112
@Test
112113
void statusWhenNonStandard() {
113-
given(this.response.rawStatusCode()).willReturn(490);
114+
given(this.response.statusCode()).willReturn(HttpStatusCode.valueOf(490));
114115
assertThat(WebClientExchangeTags.status(this.response, null)).isEqualTo(Tag.of("status", "490"));
115116
}
116117

@@ -127,49 +128,49 @@ void outcomeTagIsUnknownWhenResponseIsNull() {
127128

128129
@Test
129130
void outcomeTagIsInformationalWhenResponseIs1xx() {
130-
given(this.response.rawStatusCode()).willReturn(HttpStatus.CONTINUE.value());
131+
given(this.response.statusCode()).willReturn(HttpStatus.CONTINUE);
131132
Tag tag = WebClientExchangeTags.outcome(this.response);
132133
assertThat(tag.getValue()).isEqualTo("INFORMATIONAL");
133134
}
134135

135136
@Test
136137
void outcomeTagIsSuccessWhenResponseIs2xx() {
137-
given(this.response.rawStatusCode()).willReturn(HttpStatus.OK.value());
138+
given(this.response.statusCode()).willReturn(HttpStatus.OK);
138139
Tag tag = WebClientExchangeTags.outcome(this.response);
139140
assertThat(tag.getValue()).isEqualTo("SUCCESS");
140141
}
141142

142143
@Test
143144
void outcomeTagIsRedirectionWhenResponseIs3xx() {
144-
given(this.response.rawStatusCode()).willReturn(HttpStatus.MOVED_PERMANENTLY.value());
145+
given(this.response.statusCode()).willReturn(HttpStatus.MOVED_PERMANENTLY);
145146
Tag tag = WebClientExchangeTags.outcome(this.response);
146147
assertThat(tag.getValue()).isEqualTo("REDIRECTION");
147148
}
148149

149150
@Test
150151
void outcomeTagIsClientErrorWhenResponseIs4xx() {
151-
given(this.response.rawStatusCode()).willReturn(HttpStatus.BAD_REQUEST.value());
152+
given(this.response.statusCode()).willReturn(HttpStatus.BAD_REQUEST);
152153
Tag tag = WebClientExchangeTags.outcome(this.response);
153154
assertThat(tag.getValue()).isEqualTo("CLIENT_ERROR");
154155
}
155156

156157
@Test
157158
void outcomeTagIsServerErrorWhenResponseIs5xx() {
158-
given(this.response.rawStatusCode()).willReturn(HttpStatus.BAD_GATEWAY.value());
159+
given(this.response.statusCode()).willReturn(HttpStatus.BAD_GATEWAY);
159160
Tag tag = WebClientExchangeTags.outcome(this.response);
160161
assertThat(tag.getValue()).isEqualTo("SERVER_ERROR");
161162
}
162163

163164
@Test
164165
void outcomeTagIsClientErrorWhenResponseIsNonStandardInClientSeries() {
165-
given(this.response.rawStatusCode()).willReturn(490);
166+
given(this.response.statusCode()).willReturn(HttpStatusCode.valueOf(490));
166167
Tag tag = WebClientExchangeTags.outcome(this.response);
167168
assertThat(tag.getValue()).isEqualTo("CLIENT_ERROR");
168169
}
169170

170171
@Test
171172
void outcomeTagIsUnknownWhenResponseStatusIsInUnknownSeries() {
172-
given(this.response.rawStatusCode()).willReturn(701);
173+
given(this.response.statusCode()).willReturn(HttpStatusCode.valueOf(701));
173174
Tag tag = WebClientExchangeTags.outcome(this.response);
174175
assertThat(tag.getValue()).isEqualTo("UNKNOWN");
175176
}

spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/server/WebFluxTagsTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2021 the original author or authors.
2+
* Copyright 2012-2022 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -153,7 +153,7 @@ void outcomeTagIsSuccessWhenResponseStatusIsAvailableFromUnderlyingServer() {
153153
ServerHttpRequest request = mock(ServerHttpRequest.class);
154154
ServerHttpResponse response = mock(ServerHttpResponse.class);
155155
given(response.getStatusCode()).willReturn(HttpStatus.OK);
156-
given(response.getRawStatusCode()).willReturn(null);
156+
given(response.getStatusCode().value()).willReturn(null);
157157
given(exchange.getRequest()).willReturn(request);
158158
given(exchange.getResponse()).willReturn(response);
159159
Tag tag = WebFluxTags.outcome(exchange, null);

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/reactive/error/AbstractErrorWebExceptionHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ protected void logError(ServerRequest request, ServerResponse response, Throwabl
320320
if (logger.isDebugEnabled()) {
321321
logger.debug(request.exchange().getLogPrefix() + formatError(throwable, request));
322322
}
323-
if (HttpStatus.resolve(response.rawStatusCode()) != null
323+
if (HttpStatus.resolve(response.statusCode().value()) != null
324324
&& response.statusCode().equals(HttpStatus.INTERNAL_SERVER_ERROR)) {
325325
logger.error(LogMessage.of(() -> String.format("%s 500 Server Error for %s",
326326
request.exchange().getLogPrefix(), formatRequest(request))), throwable);

0 commit comments

Comments
 (0)