
com.github.anonymousmister.bootfastconfig.cache.CacheAuotConfig Maven / Gradle / Ivy
package com.github.anonymousmister.bootfastconfig.cache;
import com.github.anonymousmister.bootfastconfig.cache.caffeine.CaffeineConfig;
import com.github.anonymousmister.bootfastconfig.cache.properties.CacheConfigProperties;
import com.github.anonymousmister.bootfastconfig.cache.properties.CaffeineBuilder;
import com.github.anonymousmister.bootfastconfig.cache.properties.CaffeineCacheProperties;
import com.github.anonymousmister.bootfastconfig.cache.properties.L2CacheProperties;
import com.github.anonymousmister.bootfastconfig.cache.redis.RedisConfig;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Import;
/**
* @author mister
*/
@EnableConfigurationProperties(CacheAuotConfig.class)
@Import({L2CacheConfig.class,
CaffeineConfig.class,
RedisConfig.class,
CachingConfigurer.class
})
public class CacheAuotConfig {
@Bean
@ConfigurationProperties(prefix = "fastconfig.cache")
public CacheConfigProperties getPropertiesCacheConfig() {
return new CacheConfigProperties();
}
@Bean
@ConfigurationProperties(prefix = "fastconfig.cache.l2-cache")
public L2CacheProperties getL2CacheProperties() {
return new L2CacheProperties();
}
@Bean
@ConfigurationProperties(prefix = "fastconfig.cache.caffeine-cache")
public CaffeineCacheProperties getCaffeineCacheProperties() {
return new CaffeineCacheProperties();
}
@Bean
@ConfigurationProperties(prefix = "fastconfig.cache.caffeine-auotspec")
public CaffeineBuilder getCaffeineBuilder() {
return new CaffeineBuilder();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy