package com.imaginarycode.minecraft.redisbungee.api.summoners; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPooled; import java.io.IOException; public class JedisPooledSummoner implements Summoner { private final JedisPooled jedisPooled; private final JedisPool jedisPool; public JedisPooledSummoner(JedisPooled jedisPooled, JedisPool jedisPool) { this.jedisPooled = jedisPooled; this.jedisPool = jedisPool; try (Jedis jedis = this.jedisPool.getResource()) { // Test the connection to make sure configuration is right jedis.ping(); } } @Override public JedisPooled obtainResource() { return this.jedisPooled; } public JedisPool getCompatibilityJedisPool() { return this.jedisPool; } @Override public void close() throws IOException { this.jedisPool.close(); this.jedisPooled.close(); } }