diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactory.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactory.java index 7e85f145..625f6ff9 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactory.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactory.java @@ -89,8 +89,8 @@ public class CacheRequestBodyGatewayFilterFactory // Object backupCachedBody = exchange.getAttributes() .get(CACHED_ORIGINAL_REQUEST_BODY_BACKUP_ATTR); - if (backupCachedBody instanceof DataBuffer) { - DataBufferUtils.release((DataBuffer) backupCachedBody); + if (backupCachedBody instanceof DataBuffer dataBuffer) { + DataBufferUtils.release(dataBuffer); } }); })); diff --git a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactoryTests.java b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactoryTests.java index 009172db..bcabf1c2 100644 --- a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactoryTests.java +++ b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/CacheRequestBodyGatewayFilterFactoryTests.java @@ -175,8 +175,7 @@ public class CacheRequestBodyGatewayFilterFactoryTests extends BaseWebClientTest return chain.filter(exchange).doAfterTerminate(() -> { Object o = exchange.getAttributes() .get(CacheRequestBodyGatewayFilterFactory.CACHED_ORIGINAL_REQUEST_BODY_BACKUP_ATTR); - if (o instanceof PooledDataBuffer) { - PooledDataBuffer dataBuffer = (PooledDataBuffer) o; + if (o instanceof PooledDataBuffer dataBuffer) { if (dataBuffer.isAllocated()) { exchange.getResponse().setStatusCode(HttpStatus.INTERNAL_SERVER_ERROR); fail("DataBuffer is not released");