Subversion Repositories SmartDukaan

Rev

Rev 23405 | Rev 24440 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
22009 ashik.ali 1
package com.spice.profitmandi.dao.config;
2
 
3
import java.util.concurrent.TimeUnit;
4
 
5
import org.springframework.cache.CacheManager;
6
import org.springframework.cache.annotation.CachingConfigurerSupport;
7
import org.springframework.cache.annotation.EnableCaching;
23716 amit.gupta 8
import org.springframework.cache.caffeine.CaffeineCacheManager;
22009 ashik.ali 9
import org.springframework.context.annotation.Bean;
10
import org.springframework.context.annotation.Configuration;
11
 
23716 amit.gupta 12
import com.github.benmanes.caffeine.cache.Caffeine;
22009 ashik.ali 13
 
14
@Configuration
15
@EnableCaching
23716 amit.gupta 16
public class CacheConfig extends CachingConfigurerSupport {
17
 
22009 ashik.ali 18
	@Override
19
	@Bean
20
	public CacheManager cacheManager() {
23716 amit.gupta 21
		CaffeineCacheManager cacheManager = new CaffeineCacheManager();
22
		return cacheManager;
22009 ashik.ali 23
	}
23716 amit.gupta 24
 
22009 ashik.ali 25
	@Bean
26
	public CacheManager timeoutCacheManager() {
23716 amit.gupta 27
		CaffeineCacheManager cacheManager = new CaffeineCacheManager();
28
		Caffeine<Object, Object> caffeine = Caffeine.newBuilder().expireAfterWrite(5, TimeUnit.MINUTES);
29
		cacheManager.setCaffeine(caffeine);
30
		return cacheManager;
22009 ashik.ali 31
	}
23716 amit.gupta 32
 
23405 amit.gupta 33
	@Bean
34
	public CacheManager oneDayCacheManager() {
23716 amit.gupta 35
		CaffeineCacheManager cacheManager = new CaffeineCacheManager();
36
		Caffeine<Object, Object> caffeine = Caffeine.newBuilder().expireAfterWrite(1, TimeUnit.DAYS);
37
		cacheManager.setCaffeine(caffeine);
23405 amit.gupta 38
		return cacheManager;
39
	}
22009 ashik.ali 40
 
22708 amit.gupta 41
	@Bean
42
	public CacheManager twoMintimeoutCacheManager() {
23716 amit.gupta 43
		CaffeineCacheManager cacheManager = new CaffeineCacheManager();
44
		Caffeine<Object, Object> caffeine = Caffeine.newBuilder().expireAfterWrite(2, TimeUnit.MINUTES);
45
		cacheManager.setCaffeine(caffeine);
22708 amit.gupta 46
		return cacheManager;
47
	}
48
 
23405 amit.gupta 49
	@Bean
50
	public CacheManager thirtyMinsTimeOutCacheManager() {
23716 amit.gupta 51
		CaffeineCacheManager cacheManager = new CaffeineCacheManager();
52
		Caffeine<Object, Object> caffeine = Caffeine.newBuilder().expireAfterWrite(30, TimeUnit.MINUTES);
53
		cacheManager.setCaffeine(caffeine);
23405 amit.gupta 54
		return cacheManager;
55
	}
56
 
22009 ashik.ali 57
}