com.codahale.metrics.ehcache.InstrumentedEhcache#org.springframework.cache.ehcache.EhCacheCacheManager源码实例Demo

下面列出了com.codahale.metrics.ehcache.InstrumentedEhcache#org.springframework.cache.ehcache.EhCacheCacheManager 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

private CacheManager decision(org.springframework.cache.CacheManager springCacheManager) {
	if (springCacheManager instanceof EhCacheCacheManager) {
		EhCacheManager ehCacheManager = new EhCacheManager();
		ehCacheManager.setCacheManager(((EhCacheCacheManager) springCacheManager).getCacheManager());
		return ehCacheManager;
	}
	
	if (springCacheManager instanceof org.springframework.data.redis.cache.RedisCacheManager) {
		GenericJackson2JsonRedisSerializer jsonSerializer = new GenericJackson2JsonRedisSerializer();
		RedisTemplate rt = new RedisTemplate<Object, Object>();
		rt.setConnectionFactory(SpringContextUtils.getBean(RedisConnectionFactory.class));
		rt.setKeySerializer(jsonSerializer);
		rt.setHashKeySerializer(jsonSerializer);
		rt.setBeanClassLoader(this.getClass().getClassLoader());
		rt.afterPropertiesSet();
		RedisCacheManager redisCacheManager = new RedisCacheManager();
		redisCacheManager.setRedisTemplate(rt);
		return redisCacheManager;
	}
	return new SpringCacheManager(springCacheManager);
}
 
private void biuldCacheManager() {
	
	this.cacheManager = this.customizer.getCacheManager();
	if(Objects.isNull(this.cacheManager)) {
		if(Objects.isNull(springCacheManager)) {
			this.cacheManager = new MapCacheManager();
		}else {
			if (springCacheManager instanceof EhCacheCacheManager) {
				EhCacheManager ehCacheManager = new EhCacheManager();
				ehCacheManager.setCacheManager(((EhCacheCacheManager) springCacheManager).getCacheManager());
				this.cacheManager = ehCacheManager;
			}
			if (springCacheManager instanceof org.springframework.data.redis.cache.RedisCacheManager) {
				RedisCacheManager redisCacheManager = new RedisCacheManager();
				redisCacheManager.setRedisTemplate(RedisUtils.imitateRedisTemplate());
				this.cacheManager = redisCacheManager;
			}
		}
	}
	this.cacheDelegator = new CacheDelegator(this.cacheManager);
}
 
@Bean
public CacheManager cacheManager() {
    log.debug("Starting Ehcache");
    cacheManager = net.sf.ehcache.CacheManager.create();
    cacheManager.getConfiguration().setMaxBytesLocalHeap(env.getProperty("cache.ehcache.maxBytesLocalHeap", String.class, "16M"));
    log.debug("Registering Ehcache Metrics gauges");
    Set<EntityType<?>> entities = entityManager.getMetamodel().getEntities();
    for (EntityType<?> entity : entities) {

        String name = entity.getName();
        if (name == null || entity.getJavaType() != null) {
            name = entity.getJavaType().getName();
        }
        Assert.notNull(name, "entity cannot exist without a identifier");

        net.sf.ehcache.Cache cache = cacheManager.getCache(name);
        if (cache != null) {
            cache.getCacheConfiguration().setTimeToLiveSeconds(env.getProperty("cache.timeToLiveSeconds", Long.class, 3600L));
            net.sf.ehcache.Ehcache decoratedCache = InstrumentedEhcache.instrument(metricRegistry, cache);
            cacheManager.replaceCacheWithDecoratedCache(cache, decoratedCache);
        }
    }
    EhCacheCacheManager ehCacheManager = new EhCacheCacheManager();
    ehCacheManager.setCacheManager(cacheManager);
    return ehCacheManager;
}
 
源代码4 项目: ServiceCutter   文件: CacheConfiguration.java
@Bean
public CacheManager cacheManager() {
    log.debug("Starting Ehcache");
    cacheManager = net.sf.ehcache.CacheManager.create();
    cacheManager.getConfiguration().setMaxBytesLocalHeap(env.getProperty("cache.ehcache.maxBytesLocalHeap", String.class, "16M"));
    log.debug("Registering Ehcache Metrics gauges");
    Set<EntityType<?>> entities = entityManager.getMetamodel().getEntities();
    for (EntityType<?> entity : entities) {

        String name = entity.getName();
        if (name == null || entity.getJavaType() != null) {
            name = entity.getJavaType().getName();
        }
        Assert.notNull(name, "entity cannot exist without a identifier");

        net.sf.ehcache.Cache cache = cacheManager.getCache(name);
        if (cache != null) {
            cache.getCacheConfiguration().setTimeToLiveSeconds(env.getProperty("cache.timeToLiveSeconds", Long.class, 3600L));
            net.sf.ehcache.Ehcache decoratedCache = InstrumentedEhcache.instrument(metricRegistry, cache);
            cacheManager.replaceCacheWithDecoratedCache(cache, decoratedCache);
        }
    }
    EhCacheCacheManager ehCacheManager = new EhCacheCacheManager();
    ehCacheManager.setCacheManager(cacheManager);
    return ehCacheManager;
}
 
源代码5 项目: Project   文件: CachingConfig3.java
@Bean
public CacheManager cacheManager(net.sf.ehcache.CacheManager cm, 
		RedisTemplate<String, Object> redisTemplate) {
	
	CompositeCacheManager compositeCacheManager = new CompositeCacheManager();
	List<CacheManager> managers = new ArrayList<CacheManager>();
	managers.add(new EhCacheCacheManager(cm));
	managers.add(new RedisCacheManager(redisTemplate));
	compositeCacheManager.setCacheManagers(managers);//添加缓存管理器,按添加顺序查找,没找到再往下找
	return compositeCacheManager;
}
 
源代码6 项目: chronus   文件: Ehcache.java
public Ehcache(EhCacheCacheManager ehCacheCacheManager) {
    this.ehCacheCacheManager = ehCacheCacheManager;
}
 
源代码7 项目: Project   文件: CachingConfig.java
@Bean
public EhCacheCacheManager cacheManager(CacheManager cm) {
	return new EhCacheCacheManager(cm);
}
 
@Bean
public CacheManager cacheManager() {
	return new EhCacheCacheManager(cacheManagerFactoryBean().getObject());
}
 
源代码9 项目: api-layer   文件: CacheConfig.java
@Bean
public CacheManager cacheManager() {
    return new EhCacheCacheManager(ehCacheCacheManager().getObject());
}
 
源代码10 项目: MicroCommunity   文件: CacheConfiguration.java
@Bean(name = "appEhCacheCacheManager")
public EhCacheCacheManager ehCacheCacheManager(EhCacheManagerFactoryBean bean){
    return new EhCacheCacheManager (bean.getObject());
}
 
@Bean
public CacheManager cacheManager(){
	CacheManager cm = new EhCacheCacheManager( ehCacheCacheManager().getObject());
	return cm;
}
 
@Bean
public CacheManager cacheManager() {
    val manager = new EhCacheCacheManager();
    manager.setCacheManager(ehcache().getObject());
    return manager;
}
 
源代码13 项目: Spring-Boot-Blog   文件: CacheConfiguration.java
@Bean
public EhCacheCacheManager ehCacheCacheManager(){
    return new EhCacheCacheManager(ehCacheManagerFactoryBean().getObject());
}
 
源代码14 项目: yes-cart   文件: HibernateEhCacheRegionFactory.java
/**
 * Spring IoC.
 *
 * @param cacheManager cache manager
 */
public void setCacheManager(final EhCacheCacheManager cacheManager) {
    PROVIDER = new SingletonEhCacheRegionFactory(null) {{
        manager = cacheManager.getCacheManager();
    }};
}
 
源代码15 项目: herd   文件: DaoSpringModuleConfig.java
@Bean
@Override
public CacheManager cacheManager()
{
    return new EhCacheCacheManager(ehCacheManager());
}
 
源代码16 项目: kvf-admin   文件: EhCacheConfig.java
/**
 * ehcache 主要的管理器
 *
 * @param cacheManagerFactoryBean cm
 * @return ec
 */
@Bean
public EhCacheCacheManager ehCacheCacheManager(EhCacheManagerFactoryBean cacheManagerFactoryBean) {
    return new EhCacheCacheManager(cacheManagerFactoryBean.getObject());
}
 
源代码17 项目: cc-s   文件: CacheConfig.java
/**
 *  ehcache管理器
 * @param bean
 * @return
 */
@Bean
public EhCacheCacheManager ehCacheCacheManager(EhCacheManagerFactoryBean bean){
    return new EhCacheCacheManager(bean.getObject());
}