@Override
    public void configure(Env env, Config config, Binder binder) {
    """
	<p>
	Creates a new {@link RedisSentinel} instance and connect to the provided database. Please note, the
	name is a property in your <code>application.conf</code> file with Redis URI.
	RedisSentinel is pool of Jedis and for get Jedis just call pool.getResource()
	</p>
	
	<pre>
	{
	use(new RedisSentinel("db1"));
	}
	</pre>
	
	application.conf
	
	<pre>
	jedis.sentinel.hosts = ["localhost:26379", "host2:26379"]
	jedis.sentinel.master = "master"
	jedis.password = "mySuperSecretPasswordPutHere"
	</pre>
	
	Example:
	<pre>
	try (Jedis redis = request.require(JedisSentinelPool.class).getResource()) {
	System.out.println( redis.set("test", "this is work") );
	System.out.println( redis.get("test");
	} catch (Exception e) {
	e.printStackTrace();
	}
	</pre>
    """
        /**
         * Pool
         */
        GenericObjectPoolConfig poolConfig = poolConfig(config.getConfig("jedis.pool"));
        int timeout = (int) config.getDuration("jedis.timeout", TimeUnit.MILLISECONDS);

        List<String> hosts = config.getStringList("jedis.sentinel.hosts");
        if (hosts.size() < 1) throw new IllegalArgumentException("List of hosts (jedis.sentinel.hosts) can not be empty");
        final Set<String> sentinels = new HashSet<>(hosts);

        final String MASTER_NAME = config.getString("jedis.sentinel.master");
        final String REDIS_PASSWORD = config.getString("jedis.password");

        JedisSentinelPool pool;
        if (REDIS_PASSWORD.length() > 0) {
            pool = new JedisSentinelPool(MASTER_NAME, sentinels, poolConfig, timeout, REDIS_PASSWORD);
        } else {
            pool = new JedisSentinelPool(MASTER_NAME, sentinels, poolConfig, timeout);
        }

        RedisProvider provider = new RedisProvider(pool, null, poolConfig);
        env.onStart(provider::start);
        env.onStop(provider::stop);

        Env.ServiceKey serviceKey = env.serviceKey();
        serviceKey.generate(JedisSentinelPool.class, "db", k -> binder.bind(k).toInstance(pool));
    }
@Override
    public void configure(Env env, Config config, Binder binder) {
        /**
         * Pool
         */
        GenericObjectPoolConfig poolConfig = poolConfig(config.getConfig("jedis.pool"));
        int timeout = (int) config.getDuration("jedis.timeout", TimeUnit.MILLISECONDS);

        List<String> hosts = config.getStringList("jedis.sentinel.hosts");
        if (hosts.size() < 1) throw new IllegalArgumentException("List of hosts (jedis.sentinel.hosts) can not be empty");
        final Set<String> sentinels = new HashSet<>(hosts);

        final String MASTER_NAME = config.getString("jedis.sentinel.master");
        final String REDIS_PASSWORD = config.getString("jedis.password");

        JedisSentinelPool pool;
        if (REDIS_PASSWORD.length() > 0) {
            pool = new JedisSentinelPool(MASTER_NAME, sentinels, poolConfig, timeout, REDIS_PASSWORD);
        } else {
            pool = new JedisSentinelPool(MASTER_NAME, sentinels, poolConfig, timeout);
        }

        RedisProvider provider = new RedisProvider(pool, null, poolConfig);
        env.onStart(provider::start);
        env.onStop(provider::stop);

        Env.ServiceKey serviceKey = env.serviceKey();
        serviceKey.generate(JedisSentinelPool.class, "db", k -> binder.bind(k).toInstance(pool));
    }
@ Override public void configure ( Env env , Config config , Binder binder ) { /**
         * Pool
         */ GenericObjectPoolConfig poolConfig = poolConfig ( config . getConfig ( "jedis.pool" ) ) ; int timeout = ( int ) config . getDuration ( "jedis.timeout" , TimeUnit . MILLISECONDS ) ; List < String > hosts = config . getStringList ( "jedis.sentinel.hosts" ) ; if ( hosts . size ( ) < 1 ) throw new IllegalArgumentException ( "List of hosts (jedis.sentinel.hosts) can not be empty" ) ; final Set < String > sentinels = new HashSet <> ( hosts ) ; final String MASTER_NAME = config . getString ( "jedis.sentinel.master" ) ; final String REDIS_PASSWORD = config . getString ( "jedis.password" ) ; JedisSentinelPool pool ; if ( REDIS_PASSWORD . length ( ) > 0 ) { pool = new JedisSentinelPool ( MASTER_NAME , sentinels , poolConfig , timeout , REDIS_PASSWORD ) ; } else { pool = new JedisSentinelPool ( MASTER_NAME , sentinels , poolConfig , timeout ) ; } RedisProvider provider = new RedisProvider ( pool , null , poolConfig ) ; env . onStart ( provider :: start ) ; env . onStop ( provider :: stop ) ; Env . ServiceKey serviceKey = env . serviceKey ( ) ; serviceKey . generate ( JedisSentinelPool . class , "db" , k -> binder . bind ( k ) . toInstance ( pool ) ) ; }
<p>
Creates a new {@link RedisSentinel} instance and connect to the provided database. Please note, the
name is a property in your <code>application.conf</code> file with Redis URI.
RedisSentinel is pool of Jedis and for get Jedis just call pool.getResource()
</p>

<pre>
{
use(new RedisSentinel("db1"));
}
</pre>

application.conf

<pre>
jedis.sentinel.hosts = ["localhost:26379", "host2:26379"]
jedis.sentinel.master = "master"
jedis.password = "mySuperSecretPasswordPutHere"
</pre>

Example:
<pre>
try (Jedis redis = request.require(JedisSentinelPool.class).getResource()) {
System.out.println( redis.set("test", "this is work") );
System.out.println( redis.get("test");
} catch (Exception e) {
e.printStackTrace();
}
</pre>
<p > Creates a new { @link RedisSentinel } instance and connect to the provided database . Please note the name is a property in your <code > application . conf< / code > file with Redis URI . RedisSentinel is pool of Jedis and for get Jedis just call pool . getResource () < / p >