Skip to content

Commit 09b9cb6

Browse files
authored
Merge pull request eugenp#8125 from eugenp/revert-8119-BAEL-3275-2
Revert "BAEL-3275: Using blocking queue for pub-sub"
2 parents 97a0cbb + 7e084e2 commit 09b9cb6

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

persistence-modules/spring-data-redis/src/main/java/com/baeldung/spring/data/redis/queue/RedisMessageSubscriber.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,16 @@
44
import org.springframework.data.redis.connection.MessageListener;
55
import org.springframework.stereotype.Service;
66

7-
import java.util.concurrent.ArrayBlockingQueue;
8-
import java.util.concurrent.BlockingQueue;
7+
import java.util.ArrayList;
8+
import java.util.List;
99

1010
@Service
1111
public class RedisMessageSubscriber implements MessageListener {
1212

13-
public static BlockingQueue<String> messages = new ArrayBlockingQueue<String>(100);
13+
public static List<String> messageList = new ArrayList<String>();
1414

1515
public void onMessage(final Message message, final byte[] pattern) {
16-
messages.add(message.toString());
16+
messageList.add(message.toString());
1717
System.out.println("Message received: " + new String(message.getBody()));
1818
}
1919
}

persistence-modules/spring-data-redis/src/test/java/com/baeldung/spring/data/redis/RedisMessageListenerIntegrationTest.java

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.baeldung.spring.data.redis;
22

3-
import com.baeldung.spring.data.redis.config.RedisConfig;
4-
import com.baeldung.spring.data.redis.queue.RedisMessagePublisher;
5-
import com.baeldung.spring.data.redis.queue.RedisMessageSubscriber;
3+
import static org.junit.Assert.assertTrue;
4+
5+
import java.io.IOException;
6+
import java.util.UUID;
7+
68
import org.junit.AfterClass;
79
import org.junit.BeforeClass;
810
import org.junit.Test;
@@ -12,12 +14,12 @@
1214
import org.springframework.test.annotation.DirtiesContext.ClassMode;
1315
import org.springframework.test.context.ContextConfiguration;
1416
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
15-
import redis.embedded.RedisServerBuilder;
1617

17-
import java.io.IOException;
18-
import java.util.UUID;
18+
import com.baeldung.spring.data.redis.config.RedisConfig;
19+
import com.baeldung.spring.data.redis.queue.RedisMessagePublisher;
20+
import com.baeldung.spring.data.redis.queue.RedisMessageSubscriber;
1921

20-
import static org.junit.Assert.assertTrue;
22+
import redis.embedded.RedisServerBuilder;
2123

2224
@RunWith(SpringJUnit4ClassRunner.class)
2325
@ContextConfiguration(classes = RedisConfig.class)
@@ -44,6 +46,7 @@ public static void stopRedisServer() throws IOException {
4446
public void testOnMessage() throws Exception {
4547
String message = "Message " + UUID.randomUUID();
4648
redisMessagePublisher.publish(message);
47-
assertTrue(RedisMessageSubscriber.messages.take().contains(message));
49+
Thread.sleep(1000);
50+
assertTrue(RedisMessageSubscriber.messageList.get(0).contains(message));
4851
}
4952
}

0 commit comments

Comments
 (0)