Skip to content

Commit ab47f4a

Browse files
committed
Remove DurationUtil utility class
Rename setReceiveTimeout for duration overload to setReceiveDuration
1 parent f7a1c1d commit ab47f4a

5 files changed

Lines changed: 9 additions & 149 deletions

File tree

spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisQueueInboundGateway.java

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@
1717
package org.springframework.integration.redis.inbound;
1818

1919
import java.time.Duration;
20-
import java.util.Objects;
2120
import java.util.concurrent.Executor;
22-
import java.util.concurrent.TimeUnit;
2321

2422
import org.jspecify.annotations.Nullable;
2523

@@ -36,7 +34,6 @@
3634
import org.springframework.integration.channel.MessagePublishingErrorHandler;
3735
import org.springframework.integration.gateway.MessagingGatewaySupport;
3836
import org.springframework.integration.redis.event.RedisExceptionEvent;
39-
import org.springframework.integration.redis.util.DurationUtil;
4037
import org.springframework.integration.support.management.IntegrationManagedResource;
4138
import org.springframework.integration.util.ErrorHandlingTaskExecutor;
4239
import org.springframework.jmx.export.annotation.ManagedMetric;
@@ -142,7 +139,7 @@ public void setSerializer(RedisSerializer<?> serializer) {
142139
* @param receiveTimeout {@link Duration} containing the receive timeout.
143140
* @since 7.1
144141
*/
145-
public void setReceiveTimeout(Duration receiveTimeout) {
142+
public void setReceiveDuration(Duration receiveTimeout) {
146143
Assert.isTrue(!receiveTimeout.isNegative(), "'receiveTimeout' must be >= 0.");
147144
this.receiveTimeout = receiveTimeout;
148145
}
@@ -162,27 +159,7 @@ public void setReceiveTimeout(Duration receiveTimeout) {
162159
* @param receiveTimeout Must be non-negative. Specified in milliseconds.
163160
*/
164161
public void setReceiveTimeout(long receiveTimeout) {
165-
setReceiveTimeout(Duration.ofMillis(receiveTimeout));
166-
}
167-
168-
/**
169-
* This timeout is used when retrieving elements from the queue
170-
* specified by {@link #boundListOperations}.
171-
* <p>
172-
* If the queue does contain elements, the data is retrieved immediately. However,
173-
* if the queue is empty, the Redis connection is blocked until either an element
174-
* can be retrieved from the queue or until the specified timeout passes.
175-
* <p>
176-
* A timeout of zero can be used to block indefinitely. If not set explicitly
177-
* the timeout value will default to {@code 1000 millis}
178-
* <p>
179-
* See also: https://redis.io/commands/brpop
180-
* @param receiveTimeout String containing the receive timeout as a string serialized (millis) or
181-
* ISO-8601 duration format.
182-
* @since 7.1
183-
*/
184-
public void setReceiveTimeout(String receiveTimeout) {
185-
setReceiveTimeout(DurationUtil.toDuration(Objects.requireNonNull(receiveTimeout), TimeUnit.MILLISECONDS));
162+
setReceiveDuration(Duration.ofMillis(receiveTimeout));
186163
}
187164

188165
public void setTaskExecutor(Executor taskExecutor) {

spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisQueueMessageDrivenEndpoint.java

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@
1717
package org.springframework.integration.redis.inbound;
1818

1919
import java.time.Duration;
20-
import java.util.Objects;
2120
import java.util.Optional;
2221
import java.util.concurrent.Executor;
23-
import java.util.concurrent.TimeUnit;
2422

2523
import org.jspecify.annotations.Nullable;
2624

@@ -38,7 +36,6 @@
3836
import org.springframework.integration.channel.MessagePublishingErrorHandler;
3937
import org.springframework.integration.endpoint.MessageProducerSupport;
4038
import org.springframework.integration.redis.event.RedisExceptionEvent;
41-
import org.springframework.integration.redis.util.DurationUtil;
4239
import org.springframework.integration.support.channel.ChannelResolverUtils;
4340
import org.springframework.integration.support.management.IntegrationManagedResource;
4441
import org.springframework.integration.util.ErrorHandlingTaskExecutor;
@@ -99,7 +96,6 @@ public class RedisQueueMessageDrivenEndpoint extends MessageProducerSupport
9996
* @param connectionFactory Must not be null
10097
*/
10198
public RedisQueueMessageDrivenEndpoint(String queueName, RedisConnectionFactory connectionFactory) {
102-
10399
Assert.hasText(queueName, "'queueName' is required");
104100
Assert.notNull(connectionFactory, "'connectionFactory' must not be null");
105101
RedisTemplate<String, byte[]> template = new RedisTemplate<>();
@@ -154,31 +150,11 @@ public void setExpectMessage(boolean expectMessage) {
154150
* @param receiveTimeout {@link Duration} containing the receive timeout.
155151
* @since 7.1
156152
*/
157-
public void setReceiveTimeout(Duration receiveTimeout) {
153+
public void setReceiveDuration(Duration receiveTimeout) {
158154
Assert.isTrue(!receiveTimeout.isNegative(), "'receiveTimeout' must be >= 0.");
159155
this.receiveTimeout = receiveTimeout;
160156
}
161157

162-
/**
163-
* This timeout is used when retrieving elements from the queue
164-
* specified by {@link BoundListOperations}.
165-
* <p>
166-
* If the queue does contain elements, the data is retrieved immediately. However,
167-
* if the queue is empty, the Redis connection is blocked until either an element
168-
* can be retrieved from the queue or until the specified timeout passes.
169-
* <p>
170-
* A timeout of zero can be used to block indefinitely. If not set explicitly
171-
* the timeout value will default to {@code 1000 millis}
172-
* <p>
173-
* See also: https://redis.io/commands/brpop
174-
* @param receiveTimeout String containing the receive timeout as a string serialized (millis) or
175-
* ISO-8601 duration format.
176-
* @since 7.1
177-
*/
178-
public void setReceiveTimeout(String receiveTimeout) {
179-
setReceiveTimeout(DurationUtil.toDuration(Objects.requireNonNull(receiveTimeout), TimeUnit.MILLISECONDS));
180-
}
181-
182158
/**
183159
* This timeout (milliseconds) is used when retrieving elements from the queue
184160
* specified by {@link #boundListOperations}.
@@ -194,7 +170,7 @@ public void setReceiveTimeout(String receiveTimeout) {
194170
* @param receiveTimeout Must be non-negative. Specified in milliseconds.
195171
*/
196172
public void setReceiveTimeout(long receiveTimeout) {
197-
setReceiveTimeout(Duration.ofMillis(receiveTimeout));
173+
setReceiveDuration(Duration.ofMillis(receiveTimeout));
198174
}
199175

200176
public void setTaskExecutor(Executor taskExecutor) {

spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisQueueOutboundGateway.java

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
package org.springframework.integration.redis.outbound;
1818

1919
import java.time.Duration;
20-
import java.util.Objects;
21-
import java.util.concurrent.TimeUnit;
2220

2321
import org.jspecify.annotations.Nullable;
2422

@@ -29,7 +27,6 @@
2927
import org.springframework.data.redis.serializer.RedisSerializer;
3028
import org.springframework.data.redis.serializer.StringRedisSerializer;
3129
import org.springframework.integration.handler.AbstractReplyProducingMessageHandler;
32-
import org.springframework.integration.redis.util.DurationUtil;
3330
import org.springframework.messaging.Message;
3431
import org.springframework.util.AlternativeJdkIdGenerator;
3532
import org.springframework.util.Assert;
@@ -100,31 +97,11 @@ public void setBeanClassLoader(ClassLoader beanClassLoader) {
10097
* @param receiveTimeout {@link Duration} containing the receive timeout.
10198
* @since 7.1
10299
*/
103-
public void setReceiveTimeout(Duration receiveTimeout) {
100+
public void setReceiveDuration(Duration receiveTimeout) {
104101
Assert.isTrue(!receiveTimeout.isNegative(), "'receiveTimeout' must be >= 0.");
105102
this.receiveTimeout = receiveTimeout;
106103
}
107104

108-
/**
109-
* This timeout is used when retrieving elements from the queue
110-
* specified by {@link BoundListOperations}.
111-
* <p>
112-
* If the queue does contain elements, the data is retrieved immediately. However,
113-
* if the queue is empty, the Redis connection is blocked until either an element
114-
* can be retrieved from the queue or until the specified timeout passes.
115-
* <p>
116-
* A timeout of zero can be used to block indefinitely. If not set explicitly
117-
* the timeout value will default to {@code 1000 millis}
118-
* <p>
119-
* See also: https://redis.io/commands/brpop
120-
* @param receiveTimeout String containing the receive timeout as a string serialized (millis) or
121-
* ISO-8601 duration format.
122-
* @since 7.1
123-
*/
124-
public void setReceiveTimeout(String receiveTimeout) {
125-
setReceiveTimeout(DurationUtil.toDuration(Objects.requireNonNull(receiveTimeout), TimeUnit.MILLISECONDS));
126-
}
127-
128105
/**
129106
* This timeout is used when retrieving elements from the queue
130107
* specified by {@link BoundListOperations}.
@@ -142,7 +119,7 @@ public void setReceiveTimeout(String receiveTimeout) {
142119
*/
143120
@Deprecated(forRemoval = true, since = "7.1")
144121
public void setReceiveTimeout(int receiveTimeout) {
145-
setReceiveTimeout(Duration.ofMillis(receiveTimeout));
122+
setReceiveDuration(Duration.ofMillis(receiveTimeout));
146123
}
147124

148125
/**
@@ -160,7 +137,7 @@ public void setReceiveTimeout(int receiveTimeout) {
160137
* @param receiveTimeout Must be non-negative. Specified in milliseconds.
161138
*/
162139
public void setReceiveTimeout(long receiveTimeout) {
163-
setReceiveTimeout(Duration.ofMillis(receiveTimeout));
140+
setReceiveDuration(Duration.ofMillis(receiveTimeout));
164141
}
165142

166143
public void setExtractPayload(boolean extractPayload) {

spring-integration-redis/src/main/java/org/springframework/integration/redis/util/DurationUtil.java

Lines changed: 0 additions & 70 deletions
This file was deleted.

spring-integration-redis/src/test/java/org/springframework/integration/redis/config/RedisQueueGatewayIntegrationTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ void testInboundGatewayStop() {
104104
assertThat(e.getMessage()).contains("No reply produced");
105105
}
106106
finally {
107-
this.outboundGateway.setReceiveTimeout(receiveTimeout);
107+
this.outboundGateway.setReceiveDuration(receiveTimeout);
108108
}
109109
}
110110

@@ -121,7 +121,7 @@ void testNullSerializer() {
121121
}
122122
finally {
123123
this.inboundGateway.setSerializer(new StringRedisSerializer());
124-
this.outboundGateway.setReceiveTimeout(receiveTimeout);
124+
this.outboundGateway.setReceiveDuration(receiveTimeout);
125125
}
126126
}
127127

0 commit comments

Comments
 (0)