All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.penglecode.common.redis.jedis.JedisTemplate Maven / Gradle / Ivy

The newest version!
package com.penglecode.common.redis.jedis;

import redis.clients.util.Pool;

public class JedisTemplate {

	private final Pool jedisPool;
	
	public JedisTemplate(Pool jedisPool){
		this.jedisPool = jedisPool;
	}
	
	protected I getResource(){
		return jedisPool.getResource();
	}
	
	protected void returnResource(I jedis){
		if(jedis != null){
			jedisPool.returnResource(jedis);
		}
	}
	
	public  O execute(JedisCallback callback){
		if(callback != null){
			I jedis = null;
			try {
				jedis = getResource();
				return callback.doInJedis(jedis);
			} finally {
				returnResource(jedis);
			}
		}
		return null;
	}
	
}