com.opencredo.concourse.redis.RedisAggregateCatalogue Maven / Gradle / Ivy
The newest version!
package com.opencredo.concourse.redis;
import com.opencredo.concourse.domain.events.cataloguing.AggregateCatalogue;
import redis.clients.jedis.Jedis;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
public final class RedisAggregateCatalogue implements AggregateCatalogue {
public static RedisAggregateCatalogue create(Jedis jedis) {
return new RedisAggregateCatalogue(jedis);
}
private final Jedis jedis;
private RedisAggregateCatalogue(Jedis jedis) {
this.jedis = jedis;
}
@Override
public void add(String aggregateType, UUID aggregateId) {
jedis.sadd(aggregateType, aggregateId.toString());
}
@Override
public void remove(String aggregateType, UUID aggregateId) {
jedis.srem(aggregateType, aggregateId.toString());
}
@Override
public List getUuids(String aggregateType) {
return jedis.smembers(aggregateType).stream().map(UUID::fromString).collect(Collectors.toList());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy