redis.embedded.RedisCluster Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of embedded-redis Show documentation
Show all versions of embedded-redis Show documentation
Redis embedded server for Java integration testing.
Project forked from https://github.com/kstyrc/embedded-redis
The newest version!
package redis.embedded;
import com.google.common.collect.Lists;
import redis.embedded.exceptions.EmbeddedRedisException;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class RedisCluster implements Redis {
private final List sentinels = new LinkedList();
private final List servers = new LinkedList();
RedisCluster(List sentinels, List servers) {
this.servers.addAll(servers);
this.sentinels.addAll(sentinels);
}
@Override
public boolean isActive() {
for(Redis redis : sentinels) {
if(!redis.isActive()) {
return false;
}
}
for(Redis redis : servers) {
if(!redis.isActive()) {
return false;
}
}
return true;
}
@Override
public void start() throws EmbeddedRedisException {
for(Redis redis : sentinels) {
redis.start();
}
for(Redis redis : servers) {
redis.start();
}
}
@Override
public void stop() throws EmbeddedRedisException {
for(Redis redis : sentinels) {
redis.stop();
}
for(Redis redis : servers) {
redis.stop();
}
}
@Override
public List ports() {
List ports = new ArrayList();
ports.addAll(sentinelPorts());
ports.addAll(serverPorts());
return ports;
}
public List sentinels() {
return Lists.newLinkedList(sentinels);
}
public List sentinelPorts() {
List ports = new ArrayList();
for(Redis redis : sentinels) {
ports.addAll(redis.ports());
}
return ports;
}
public List servers() {
return Lists.newLinkedList(servers);
}
public List serverPorts() {
List ports = new ArrayList();
for(Redis redis : servers) {
ports.addAll(redis.ports());
}
return ports;
}
public static RedisClusterBuilder builder() {
return new RedisClusterBuilder();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy