From b3bc2d9253efc4cfb5d81b487ecaa620e4b88879 Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Wed, 3 Apr 2019 16:26:52 -0400 Subject: [PATCH] Remove workaround for reactor-core issue --- build.gradle | 4 +++- .../core/io/buffer/DataBufferUtils.java | 12 ++---------- .../core/io/buffer/DataBufferUtilsTests.java | 5 +++-- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/build.gradle b/build.gradle index 2a736b09bb9..a60cf7dd6fe 100644 --- a/build.gradle +++ b/build.gradle @@ -38,7 +38,7 @@ ext { kotlinVersion = "1.2.71" log4jVersion = "2.11.2" nettyVersion = "4.1.34.Final" - reactorVersion = "Californium-SR6" + reactorVersion = "Californium-BUILD-SNAPSHOT" rxjavaVersion = "1.3.8" rxjavaAdapterVersion = "1.2.1" rxjava2Version = "2.2.8" @@ -149,6 +149,8 @@ configure(allprojects) { project -> repositories { maven { url "https://repo.spring.io/libs-release" } + maven { url "https://repo.spring.io/snapshot" } // Reactor + mavenLocal() } dependencies { diff --git a/spring-core/src/main/java/org/springframework/core/io/buffer/DataBufferUtils.java b/spring-core/src/main/java/org/springframework/core/io/buffer/DataBufferUtils.java index 359cf189c4b..40198ba9fa5 100644 --- a/spring-core/src/main/java/org/springframework/core/io/buffer/DataBufferUtils.java +++ b/spring-core/src/main/java/org/springframework/core/io/buffer/DataBufferUtils.java @@ -57,12 +57,6 @@ public abstract class DataBufferUtils { private static final Consumer RELEASE_CONSUMER = DataBufferUtils::release; - /** - * Workaround to disable use of pooled buffers: - * https://github.com/reactor/reactor-core/issues/1634. - */ - private static final DataBufferFactory defaultDataBufferFactory = new DefaultDataBufferFactory(); - //--------------------------------------------------------------------- // Reading @@ -141,14 +135,12 @@ public abstract class DataBufferUtils { Assert.isTrue(position >= 0, "'position' must be >= 0"); Assert.isTrue(bufferSize > 0, "'bufferSize' must be > 0"); - DataBufferFactory bufferFactoryToUse = defaultDataBufferFactory; - Flux flux = Flux.using(channelSupplier, channel -> Flux.create(sink -> { ReadCompletionHandler handler = - new ReadCompletionHandler(channel, sink, position, bufferFactoryToUse, bufferSize); + new ReadCompletionHandler(channel, sink, position, bufferFactory, bufferSize); sink.onDispose(handler::dispose); - DataBuffer dataBuffer = bufferFactoryToUse.allocateBuffer(bufferSize); + DataBuffer dataBuffer = bufferFactory.allocateBuffer(bufferSize); ByteBuffer byteBuffer = dataBuffer.asByteBuffer(0, bufferSize); channel.read(byteBuffer, position, dataBuffer, handler); }), diff --git a/spring-core/src/test/java/org/springframework/core/io/buffer/DataBufferUtilsTests.java b/spring-core/src/test/java/org/springframework/core/io/buffer/DataBufferUtilsTests.java index 8e2ece6e58e..115d0fce6b6 100644 --- a/spring-core/src/test/java/org/springframework/core/io/buffer/DataBufferUtilsTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/buffer/DataBufferUtilsTests.java @@ -35,7 +35,6 @@ import java.util.concurrent.CountDownLatch; import io.netty.buffer.ByteBuf; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.mockito.stubbing.Answer; import org.reactivestreams.Subscription; @@ -50,7 +49,9 @@ import org.springframework.core.io.Resource; import org.springframework.core.io.buffer.support.DataBufferTestUtils; import static org.junit.Assert.*; -import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.*; +import static org.mockito.Mockito.anyLong; +import static org.mockito.Mockito.isA; import static org.mockito.Mockito.*; /**