@Override
public void check(ConfigurationBuilderHolder holder) {
GlobalStateConfiguration gs = getGlobalConfiguration(holder).globalState();
assertEquals(ConfigurationStorage.OVERLAY, gs.configurationStorage());
assertEquals("sharedPath", gs.sharedPersistentLocation());
EncodingConfiguration encoding = getConfiguration(holder, "local").encoding();
assertEquals(MediaType.APPLICATION_OBJECT, encoding.keyDataType().mediaType());
assertEquals(MediaType.APPLICATION_OBJECT, encoding.valueDataType().mediaType());
PartitionHandlingConfiguration ph = getConfiguration(holder, "dist").clustering().partitionHandling();
assertTrue(ph.enabled());
assertEquals(PartitionHandling.ALLOW_READS, ph.whenSplit());
assertEquals(MergePolicy.PREFERRED_NON_NULL, ph.mergePolicy());
ph = getConfiguration(holder, "repl").clustering().partitionHandling();
assertFalse(ph.enabled());
assertEquals(PartitionHandling.ALLOW_READ_WRITES, ph.whenSplit());
assertEquals(MergePolicy.NONE, ph.mergePolicy());
MemoryConfiguration mc = getConfiguration(holder, "off-heap-memory").memory();
assertEquals(StorageType.OFF_HEAP, mc.storageType());
assertEquals(10000000, mc.size());
assertEquals(4, mc.addressCount());
assertEquals(EvictionType.MEMORY, mc.evictionType());
mc = getConfiguration(holder, "binary-memory").memory();
assertEquals(StorageType.BINARY, mc.storageType());
assertEquals(1, mc.size());
mc = getConfiguration(holder, "object-memory").memory();
assertEquals(StorageType.OBJECT, mc.storageType());
}
},