assert externalizers.size() == 3;
assert externalizers.get(1234) instanceof AdvancedExternalizerTest.IdViaConfigObj.Externalizer;
assert externalizers.get(5678) instanceof AdvancedExternalizerTest.IdViaAnnotationObj.Externalizer;
assert externalizers.get(3456) instanceof AdvancedExternalizerTest.IdViaBothObj.Externalizer;
Configuration defaultCfg = cm.getDefaultCacheConfiguration();
assert defaultCfg.locking().lockAcquisitionTimeout() == 1000;
assert defaultCfg.locking().concurrencyLevel() == 100;
assert defaultCfg.locking().isolationLevel() == IsolationLevel.READ_COMMITTED;
if (!deprecated) {
assertReaperAndTimeoutInfo(defaultCfg);
}
Configuration c = cm.getCacheConfiguration("transactional");
assert !c.clustering().cacheMode().isClustered();
assert c.transaction().transactionManagerLookup() instanceof GenericTransactionManagerLookup;
assert c.transaction().useEagerLocking();
assert c.transaction().eagerLockingSingleNode();
assert !c.transaction().syncRollbackPhase();
if (!deprecated) {
assertReaperAndTimeoutInfo(defaultCfg);
}
c = cm.getCacheConfiguration("transactional2");
assert c.transaction().transactionManagerLookup() instanceof TestLookup;
assert c.transaction().cacheStopTimeout() == 10000;
assert c.transaction().lockingMode().equals(LockingMode.PESSIMISTIC);
assert !c.transaction().autoCommit();
c = cm.getCacheConfiguration("syncRepl");
assert c.clustering().cacheMode() == CacheMode.REPL_SYNC;
assert !c.clustering().stateTransfer().fetchInMemoryState();
assert c.clustering().sync().replTimeout() == 15000;
c = cm.getCacheConfiguration("asyncRepl");
assert c.clustering().cacheMode() == CacheMode.REPL_ASYNC;
assert !c.clustering().async().useReplQueue();
assert !c.clustering().async().asyncMarshalling();
assert !c.clustering().stateTransfer().fetchInMemoryState();
c = cm.getCacheConfiguration("asyncReplQueue");
assert c.clustering().cacheMode() == CacheMode.REPL_ASYNC;
assert c.clustering().async().useReplQueue();
assert !c.clustering().async().asyncMarshalling();
assert !c.clustering().stateTransfer().fetchInMemoryState();
c = cm.getCacheConfiguration("txSyncRepl");
assert c.transaction().transactionManagerLookup() instanceof GenericTransactionManagerLookup;
assert c.clustering().cacheMode() == CacheMode.REPL_SYNC;
assert !c.clustering().stateTransfer().fetchInMemoryState();
assert c.clustering().sync().replTimeout() == 15000;
c = cm.getCacheConfiguration("overriding");
assert c.clustering().cacheMode() == CacheMode.LOCAL;
assert c.locking().lockAcquisitionTimeout() == 20000;
assert c.locking().concurrencyLevel() == 1000;
assert c.locking().isolationLevel() == IsolationLevel.REPEATABLE_READ;
assert !c.storeAsBinary().enabled();
c = cm.getCacheConfiguration("storeAsBinary");
assert c.storeAsBinary().enabled();
c = cm.getCacheConfiguration("withFileStore");
assert c.loaders().preload();
assert !c.loaders().passivation();
assert !c.loaders().shared();
assert c.loaders().cacheLoaders().size() == 1;
FileCacheStoreConfiguration loaderCfg = (FileCacheStoreConfiguration) c.loaders().cacheLoaders().get(0);
assert loaderCfg.fetchPersistentState();
assert loaderCfg.ignoreModifications();
assert loaderCfg.purgeOnStartup();
assertEquals("/tmp/FileCacheStore-Location", loaderCfg.location());
assert loaderCfg.fsyncMode() == FileCacheStoreConfigurationBuilder.FsyncMode.PERIODIC;
assert loaderCfg.fsyncInterval() == 2000;
assert loaderCfg.singletonStore().pushStateTimeout() == 20000;
assert loaderCfg.singletonStore().pushStateWhenCoordinator();
assert loaderCfg.async().threadPoolSize() == 5;
assert loaderCfg.async().flushLockTimeout() == 15000;
assert loaderCfg.async().enabled();
assert loaderCfg.async().modificationQueueSize() == 700;
c = cm.getCacheConfiguration("withClusterLoader");
assert c.loaders().cacheLoaders().size() == 1;
ClusterCacheLoaderConfiguration clusterLoaderCfg = (ClusterCacheLoaderConfiguration) c.loaders().cacheLoaders().get(0);
assert clusterLoaderCfg.remoteCallTimeout() == 15000;
c = cm.getCacheConfiguration("withLoaderDefaults");
loaderCfg = (FileCacheStoreConfiguration) c.loaders().cacheLoaders().get(0);
assert loaderCfg.location().equals("/tmp/Another-FileCacheStore-Location");
assert loaderCfg.fsyncMode() == FileCacheStoreConfigurationBuilder.FsyncMode.DEFAULT;
c = cm.getCacheConfiguration("withouthJmxEnabled");
assert !c.jmxStatistics().enabled();
assert gc.globalJmxStatistics().enabled();
assert gc.globalJmxStatistics().allowDuplicateDomains();
assertEquals("funky_domain", gc.globalJmxStatistics().domain());
assert gc.globalJmxStatistics().mbeanServerLookup() instanceof PerThreadMBeanServerLookup;
c = cm.getCacheConfiguration("dist");
assert c.clustering().cacheMode() == CacheMode.DIST_SYNC;
assert c.clustering().l1().lifespan() == 600000;
assert !deprecated || c.clustering().hash().rehashRpcTimeout() == 120000;
assert c.clustering().stateTransfer().timeout() == 120000;
assert c.clustering().l1().cleanupTaskFrequency() == 1200;
assert c.clustering().hash().consistentHash() == null; // this is just an override.
assert c.clustering().hash().numOwners() == 3;
assert c.clustering().l1().enabled();
c = cm.getCacheConfiguration("dist_with_vnodes");
assert c.clustering().cacheMode() == CacheMode.DIST_SYNC;
assert c.clustering().l1().lifespan() == 600000;
assert !deprecated || c.clustering().hash().rehashRpcTimeout() == 120000;
assert c.clustering().stateTransfer().timeout() == 120000;
assert c.clustering().hash().consistentHash() == null; // this is just an override.
assert c.clustering().hash().numOwners() == 3;
assert c.clustering().l1().enabled();
assert c.clustering().hash().numVirtualNodes() == 1;
if (!deprecated) assert c.clustering().hash().numSegments() == 1000;
c = cm.getCacheConfiguration("groups");
assert c.clustering().hash().groups().enabled();
assert c.clustering().hash().groups().groupers().size() == 1;
assert c.clustering().hash().groups().groupers().get(0).getKeyType().equals(String.class);
c = cm.getCacheConfiguration("chunkSize");
assert c.clustering().stateTransfer().fetchInMemoryState();
assert c.clustering().stateTransfer().timeout() == 120000;
assert c.clustering().stateTransfer().chunkSize() == 1000;
c = cm.getCacheConfiguration("cacheWithCustomInterceptors");
assert !c.customInterceptors().interceptors().isEmpty();
assert c.customInterceptors().interceptors().size() == 5;
c = cm.getCacheConfiguration("evictionCache");
assert c.eviction().maxEntries() == 5000;
assert c.eviction().strategy().equals(EvictionStrategy.LRU);
assert c.expiration().lifespan() == 60000;
assert c.expiration().maxIdle() == 1000;
assert c.eviction().threadPolicy() == EvictionThreadPolicy.PIGGYBACK;
assert c.expiration().wakeUpInterval() == 500;
c = cm.getCacheConfiguration("withDeadlockDetection");
assert c.deadlockDetection().enabled();
assert c.deadlockDetection().spinDuration() == 1221;
assert c.clustering().cacheMode() == CacheMode.DIST_SYNC;
c = cm.getCacheConfiguration("storeKeyValueBinary");
assert c.storeAsBinary().enabled();
assert c.storeAsBinary().storeKeysAsBinary();
assert !c.storeAsBinary().storeValuesAsBinary();
if (!deprecated) {
Configuration withJDBCLoader = cm.getCacheConfiguration("withJDBCLoader");
assert !withJDBCLoader.locking().supportsConcurrentUpdates();
}
}