@Override public void init(InitializationContext ctx) { this.ctx = ctx; HotRodStoreConfiguration configuration = ctx.getConfiguration(); RemoteCacheContainer remoteCacheContainer = configuration.attributes().attribute(HotRodStoreConfiguration.REMOTE_CACHE_CONTAINER).get(); String cacheConfiguration = configuration.attributes().attribute(HotRodStoreConfiguration.CACHE_CONFIGURATION).get(); String cacheName = ctx.getCache().getName(); try { ProtocolVersion protocolVersion = remoteCacheContainer.getConfiguration().version(); // Administration support was introduced in protocol version 2.7 if (protocolVersion.compareTo(ProtocolVersion.PROTOCOL_VERSION_27) < 0) { this.remoteCache = remoteCacheContainer.getCache(cacheName, false); if (this.remoteCache == null) { throw InfinispanLogger.ROOT_LOGGER.remoteCacheMustBeDefined(protocolVersion.toString(), cacheName); } } else { InfinispanLogger.ROOT_LOGGER.remoteCacheCreated(cacheName, cacheConfiguration); this.remoteCache = remoteCacheContainer.administration().getOrCreateCache(cacheName, cacheConfiguration); } } catch (HotRodClientException ex) { throw new PersistenceException(ex); } }
protected void startAndValidateCache(RemoteCacheManager hotrodClient, String cacheName, String cacheConfiguration) { try { hotrodClient.administration() .getOrCreateCache( cacheName, cacheConfiguration ); } catch (HotRodClientException ex) { failedCacheConfigurationNames.add( cacheConfiguration ); } }
@Bean @Order(2) public CommandLineRunner createCache(ApplicationContext ctx) { return args -> { cacheManager.administration().getOrCreateCache(NEWBORNS_CACHE_NAME, "default"); logger.info(String.format("'%s' cache has been created", NEWBORNS_CACHE_NAME)); }; }
@Scheduled(fixedDelay = 2000) public void retrieveSize() { logger.info("Cache size " + cacheManager.administration().getOrCreateCache(Data.BASQUE_NAMES_CACHE, "default").size()); }
@Override public void run(String... args) { // Reset for the example, don't do this in production!! RemoteCache<Object, Object> cache = cacheManager.administration().getOrCreateCache(Data.BASQUE_NAMES_CACHE, "default"); cache.clear(); }
protected void startAndValidateCache(RemoteCacheManager hotrodClient, String cacheName) { hotrodClient.administration() .getOrCreateCache( cacheName, getCacheConfiguration( cacheName ) ); }
@Override protected <K, V, C extends Configuration<K, V>> AbstractJCache<K, V> create(String cacheName, C configuration) { ConfigurationAdapter<K, V> adapter = ConfigurationAdapter.create(configuration); cm.administration().getOrCreateCache(cacheName, (String)null); // TODO: ISPN-9237 convert a JCache configuration to an Infinispan XML return createJCache(cacheName, adapter); }
@Test public void testAdminOp() throws Exception { adminRCM.administration().getOrCreateCache("testAdminOp", "template"); }
public static void main(String[] args) { // Create a client configuration connecting to a local server ConfigurationBuilder builder = new ConfigurationBuilder(); builder.addServer().host("127.0.0.1").port(ConfigurationProperties.DEFAULT_HOTROD_PORT); builder.nearCache().mode(NearCacheMode.INVALIDATED).maxEntries(20).cacheNamePattern("near-.*"); // Connect to the server RemoteCacheManager cacheManager = new RemoteCacheManager(builder.build()); // Create one remote cache with near caching disabled and one with near caching enabled RemoteCache<Integer, String> numbers = cacheManager.administration().getOrCreateCache("numbers", "default"); RemoteCache<Integer, String> nearNumbers = cacheManager.administration().getOrCreateCache("near-numbers", "default"); for (int i = 1; i<= 20; i++) { numbers.put(i, String.valueOf(i)); nearNumbers.put(i, String.valueOf(i)); } // Read both caches data readCache(numbers); readCache(nearNumbers); // Stop the cache manager and release all resources cacheManager.stop(); }
@Test public void testMultimap() { remoteCacheManager.administration().getOrCreateCache("cutes", "default"); MultimapCacheManager multimapCacheManager = RemoteMultimapCacheManagerFactory.from(remoteCacheManager); RemoteMultimapCache<Integer, String> people = multimapCacheManager.get("cutes"); people.put(1, "Elaia"); people.put(1, "Oihana"); Collection<String> littles = people.get(1).join(); assertEquals(2, littles.size()); assertTrue(littles.contains("Elaia")); assertTrue(littles.contains("Oihana")); }
public static void main(String[] args) throws Exception { // Create a configuration for a locally-running server ConfigurationBuilder builder = new ConfigurationBuilder(); builder.addServer().host("127.0.0.1") .port(ConfigurationProperties.DEFAULT_HOTROD_PORT); // Connect to the server and create a cache RemoteCacheManager cacheManager = new RemoteCacheManager(builder.build()); cacheManager.administration().getOrCreateCache("people", "default"); // Retrieve the MultimapCacheManager from the CacheManager. MultimapCacheManager multimapCacheManager = RemoteMultimapCacheManagerFactory.from(cacheManager); // Retrieve the multimap cache. RemoteMultimapCache<Integer, String> people = multimapCacheManager.get("people"); people.put(2016, "Alberto"); people.put(2016, "Oihana"); people.put(2016, "Roman"); people.put(2016, "Ane"); people.put(2017, "Paula"); people.put(2017, "Aimar"); people.put(2018, "Elaia"); people.get(2016).whenComplete((v, ex) -> { System.out.println(v); }).join(); // Stop the cache manager and release all resources cacheManager.stop(); }
@Test(expected = HotRodClientException.class) public void testAdminOpWithoutAdminPerm() throws IOException { SecurityConfigurationHelper config = new SecurityConfigurationHelper("DIGEST-MD5"); config.forIspnServer(server1).withServerName("node0"); config.forCredentials(WRITER_LOGIN, WRITER_PASSWD); RemoteCacheManager writerRCM = new RemoteCacheManager(config.build(), true); try { writerRCM.administration().getOrCreateCache("testAdminOpWithoutAdminPerm", "template"); } finally { writerRCM.stop(); } } }
@Override public void init(InitializationContext ctx) { this.ctx = ctx; HotRodStoreConfiguration configuration = ctx.getConfiguration(); RemoteCacheContainer remoteCacheContainer = configuration.attributes().attribute(HotRodStoreConfiguration.REMOTE_CACHE_CONTAINER).get(); String cacheConfiguration = configuration.attributes().attribute(HotRodStoreConfiguration.CACHE_CONFIGURATION).get(); String cacheName = ctx.getCache().getName(); try { ProtocolVersion protocolVersion = remoteCacheContainer.getConfiguration().version(); // Administration support was introduced in protocol version 2.7 if (protocolVersion.compareTo(ProtocolVersion.PROTOCOL_VERSION_27) < 0) { this.remoteCache = remoteCacheContainer.getCache(cacheName, false); if (this.remoteCache == null) { throw InfinispanLogger.ROOT_LOGGER.remoteCacheMustBeDefined(protocolVersion.toString(), cacheName); } } else { InfinispanLogger.ROOT_LOGGER.remoteCacheCreated(cacheName, cacheConfiguration); this.remoteCache = remoteCacheContainer.administration().getOrCreateCache(cacheName, cacheConfiguration); } } catch (HotRodClientException ex) { throw new PersistenceException(ex); } }