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

com.strategicgains.repoexpress.redis.ExpiringRedisRepository Maven / Gradle / Ivy

The newest version!
package com.strategicgains.repoexpress.redis;

import redis.clients.jedis.JedisPool;

import com.strategicgains.repoexpress.domain.ExpiringIdentifiable;
import com.strategicgains.repoexpress.event.AbstractRepositoryObserver;

/**
 * This Redis repository extends RedisRepository and allows the persisted entities to set an
 * expiration time. A time of -1 is used to specify that the entity should never expire.
 * 
 * @since Aug 24, 2013
 * @see AbstractRepositoryObserver
 * @see RedisRepository
 */
public abstract class ExpiringRedisRepository
extends RedisRepository
{
	public ExpiringRedisRepository(JedisPool jedisPool, Class entityClass)
	{
		super(jedisPool, entityClass);
	}

	@Override
	public T doCreate(T item)
	{
		return super.doCreate(item,  item.getTtlSeconds());
	}

	@Override
	public T doUpdate(T item)
	{
		return super.doUpdate(item, item.getTtlSeconds());
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy