25.3. Enabling Spring Cache Support Programmatically (Remote Client-Server Mode)

Spring's cache support can be enabled programmatically in the application by performing the following steps:
  1. Add the @EnableCaching annotation to the Spring configuration class in use.
  2. Define a method returning a SpringRemoteCacheManager annotated with @Bean.
The following code snippet highlights these changes:

Example 25.4. Sample Programmatic Configuration

import org.infinispan.client.hotrod.RemoteCacheManager;
import org.infinispan.client.hotrod.configuration.Configuration;
import org.infinispan.client.hotrod.configuration.ConfigurationBuilder;
import org.infinispan.spring.provider.SpringRemoteCacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
[...]

@org.springframework.context.annotation.Configuration
@EnableCaching
public class Config {

[...]

    @Bean
    public SpringRemoteCacheManager cacheManager() throws Exception {
        Configuration config = new ConfigurationBuilder()
            .addServer()
            .host(ADDRESS)
            .port(PORT)
            .build();

        return SpringRemoteCacheManager(new RemoteCacheManager(config));
    }
[...]