Merge pull request #8125 from eugenp/revert-8119-BAEL-3275-2
Revert "BAEL-3275: Using blocking queue for pub-sub"
This commit is contained in:
@@ -4,16 +4,16 @@ import org.springframework.data.redis.connection.Message;
|
|||||||
import org.springframework.data.redis.connection.MessageListener;
|
import org.springframework.data.redis.connection.MessageListener;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.concurrent.ArrayBlockingQueue;
|
import java.util.ArrayList;
|
||||||
import java.util.concurrent.BlockingQueue;
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class RedisMessageSubscriber implements MessageListener {
|
public class RedisMessageSubscriber implements MessageListener {
|
||||||
|
|
||||||
public static BlockingQueue<String> messages = new ArrayBlockingQueue<String>(100);
|
public static List<String> messageList = new ArrayList<String>();
|
||||||
|
|
||||||
public void onMessage(final Message message, final byte[] pattern) {
|
public void onMessage(final Message message, final byte[] pattern) {
|
||||||
messages.add(message.toString());
|
messageList.add(message.toString());
|
||||||
System.out.println("Message received: " + new String(message.getBody()));
|
System.out.println("Message received: " + new String(message.getBody()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,8 +1,10 @@
|
|||||||
package com.baeldung.spring.data.redis;
|
package com.baeldung.spring.data.redis;
|
||||||
|
|
||||||
import com.baeldung.spring.data.redis.config.RedisConfig;
|
import static org.junit.Assert.assertTrue;
|
||||||
import com.baeldung.spring.data.redis.queue.RedisMessagePublisher;
|
|
||||||
import com.baeldung.spring.data.redis.queue.RedisMessageSubscriber;
|
import java.io.IOException;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
import org.junit.AfterClass;
|
import org.junit.AfterClass;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
@@ -12,13 +14,13 @@ import org.springframework.test.annotation.DirtiesContext;
|
|||||||
import org.springframework.test.annotation.DirtiesContext.ClassMode;
|
import org.springframework.test.annotation.DirtiesContext.ClassMode;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
|
||||||
|
import com.baeldung.spring.data.redis.config.RedisConfig;
|
||||||
|
import com.baeldung.spring.data.redis.queue.RedisMessagePublisher;
|
||||||
|
import com.baeldung.spring.data.redis.queue.RedisMessageSubscriber;
|
||||||
|
|
||||||
import redis.embedded.RedisServerBuilder;
|
import redis.embedded.RedisServerBuilder;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(classes = RedisConfig.class)
|
@ContextConfiguration(classes = RedisConfig.class)
|
||||||
@DirtiesContext(classMode = ClassMode.BEFORE_CLASS)
|
@DirtiesContext(classMode = ClassMode.BEFORE_CLASS)
|
||||||
@@ -44,6 +46,7 @@ public class RedisMessageListenerIntegrationTest {
|
|||||||
public void testOnMessage() throws Exception {
|
public void testOnMessage() throws Exception {
|
||||||
String message = "Message " + UUID.randomUUID();
|
String message = "Message " + UUID.randomUUID();
|
||||||
redisMessagePublisher.publish(message);
|
redisMessagePublisher.publish(message);
|
||||||
assertTrue(RedisMessageSubscriber.messages.take().contains(message));
|
Thread.sleep(1000);
|
||||||
|
assertTrue(RedisMessageSubscriber.messageList.get(0).contains(message));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user