Rev 29854 | Rev 30208 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
package com.spice.profitmandi.dao.config;import org.springframework.cache.CacheManager;import org.springframework.cache.annotation.CachingConfigurerSupport;import org.springframework.cache.annotation.EnableCaching;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.cache.RedisCacheConfiguration;import org.springframework.data.redis.cache.RedisCacheManager;import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;import org.springframework.data.redis.serializer.RedisSerializationContext;import java.time.Duration;@Configuration@EnableCachingpublic class CacheConfig extends CachingConfigurerSupport {@BeanJedisConnectionFactory jedisConnectionFactory() {return new JedisConnectionFactory();}@Beanpublic RedisCacheConfiguration cacheConfiguration() {return RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofMinutes(120)).disableCachingNullValues().serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer()));}@Beanpublic CacheManager cacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofMinutes(5))).build();}@Beanpublic CacheManager timeoutCacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofMinutes(5))).build();}@Beanpublic CacheManager timeout15CacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofMinutes(15))).build();}@Beanpublic CacheManager oneDayCacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofHours(8))).build();}@Beanpublic CacheManager twoMintimeoutCacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofMinutes(2))).build();}@Beanpublic CacheManager thirtyMinsTimeOutCacheManager() {return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(jedisConnectionFactory()).cacheDefaults(cacheConfiguration().entryTtl(Duration.ofMinutes(30))).build();}}