package org.jboss.as.quickstarts.datagrid.spring.core.configuration; import org.infinispan.spring.provider.SpringEmbeddedCacheManagerFactoryBean; import org.jboss.as.quickstarts.datagrid.spring.core.client.ClientCache; import org.jboss.as.quickstarts.datagrid.spring.core.client.CachedClientGetter; import org.jboss.as.quickstarts.datagrid.spring.core.client.ClientGetter; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.EnableCaching; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * Spring configuration for domain objects. * * @author Sebastian Laskawiec */ @Configuration @EnableCaching public class DomainConfig { @Bean public SpringEmbeddedCacheManagerFactoryBean springCache() { return new SpringEmbeddedCacheManagerFactoryBean(); } @Bean public ClientGetter clientGetter() { return new ClientGetter(); } @Bean public CachedClientGetter cachedClientGetter(ClientGetter clientGetter) { return new CachedClientGetter(clientGetter); } @Bean public ClientCache cacheHandler(CacheManager cacheManager) { return new ClientCache(cacheManager); } }