@Test public void testNearCacheFullConfig() { String mapName = "testNearCacheFullConfig"; String xml = HAZELCAST_START_TAG + " <map name=\"" + mapName + "\">\n" + " <near-cache name=\"test\">\n" + " <in-memory-format>OBJECT</in-memory-format>\n" + " <max-size>1234</max-size>\n" + " <time-to-live-seconds>77</time-to-live-seconds>\n" + " <max-idle-seconds>92</max-idle-seconds>\n" + " <eviction-policy>LFU</eviction-policy>\n" + " <invalidate-on-change>false</invalidate-on-change>\n" + " <cache-local-entries>false</cache-local-entries>\n" + " <eviction eviction-policy=\"LRU\" max-size-policy=\"ENTRY_COUNT\" size=\"3333\"/>\n" + " </near-cache>\n" + " </map>\n" + "</hazelcast>"; Config config = buildConfig(xml); MapConfig mapConfig = config.getMapConfig(mapName); NearCacheConfig nearCacheConfig = mapConfig.getNearCacheConfig(); assertEquals(InMemoryFormat.OBJECT, nearCacheConfig.getInMemoryFormat()); assertEquals(1234, nearCacheConfig.getMaxSize()); assertEquals(77, nearCacheConfig.getTimeToLiveSeconds()); assertEquals(92, nearCacheConfig.getMaxIdleSeconds()); assertEquals("LFU", nearCacheConfig.getEvictionPolicy()); assertFalse(nearCacheConfig.isInvalidateOnChange()); assertFalse(nearCacheConfig.isCacheLocalEntries()); assertEquals(LRU, nearCacheConfig.getEvictionConfig().getEvictionPolicy()); assertEquals(ENTRY_COUNT, nearCacheConfig.getEvictionConfig().getMaximumSizePolicy()); assertEquals(3333, nearCacheConfig.getEvictionConfig().getSize()); assertEquals("test", nearCacheConfig.getName()); }
@Test public void testMapConfig() { assertNotNull(config); assertEquals(6, config.getMapConfigs().size()); MapConfig testMapConfig = config.getMapConfig("testMap"); assertNotNull(testMapConfig); assertEquals("testMap", testMapConfig.getName()); assertEquals(2, testMapConfig.getBackupCount()); assertEquals(MapConfig.EvictionPolicy.NONE, testMapConfig.getEvictionPolicy()); assertEquals(Integer.MAX_VALUE, testMapConfig.getMaxSizeConfig().getSize()); assertEquals(30, testMapConfig.getEvictionPercentage()); assertEquals(0, testMapConfig.getTimeToLiveSeconds()); assertEquals("PUT_IF_ABSENT", testMapConfig.getMergePolicy()); assertTrue(testMapConfig.isReadBackupData()); assertEquals(2, testMapConfig.getMapIndexConfigs().size()); for (MapIndexConfig index : testMapConfig.getMapIndexConfigs()) { if ("name".equals(index.getAttribute())) { assertFalse(index.isOrdered()); } else if ("age".equals(index.getAttribute())) { assertTrue(index.isOrdered()); } else { fail("unknown index!"); } } // Test that the testMapConfig has a mapStoreConfig and it is correct MapStoreConfig testMapStoreConfig = testMapConfig.getMapStoreConfig(); assertNotNull(testMapStoreConfig); assertEquals("com.hazelcast.spring.DummyStore", testMapStoreConfig.getClassName()); assertTrue(testMapStoreConfig.isEnabled()); assertEquals(0, testMapStoreConfig.getWriteDelaySeconds()); assertEquals(MapStoreConfig.InitialLoadMode.EAGER, testMapStoreConfig.getInitialLoadMode()); // Test that the testMapConfig has a nearCacheConfig and it is correct NearCacheConfig testNearCacheConfig = testMapConfig.getNearCacheConfig(); assertNotNull(testNearCacheConfig); assertEquals(0, testNearCacheConfig.getTimeToLiveSeconds()); assertEquals(60, testNearCacheConfig.getMaxIdleSeconds()); assertEquals("LRU", testNearCacheConfig.getEvictionPolicy()); assertEquals(5000, testNearCacheConfig.getMaxSize()); assertTrue(testNearCacheConfig.isInvalidateOnChange()); // Test that the testMapConfig2's mapStoreConfig implementation MapConfig testMapConfig2 = config.getMapConfig("testMap2"); assertNotNull(testMapConfig2.getMapStoreConfig().getImplementation()); assertEquals(dummyMapStore, testMapConfig2.getMapStoreConfig().getImplementation()); assertEquals( MapStoreConfig.InitialLoadMode.LAZY, testMapConfig2.getMapStoreConfig().getInitialLoadMode()); assertEquals("testWan", testMapConfig2.getWanReplicationRef().getName()); // assertEquals("hz.ADD_NEW_ENTRY", // testMapConfig2.getWanReplicationRef().getMergePolicy()); assertEquals(1000, testMapConfig2.getMaxSizeConfig().getSize()); assertEquals( MaxSizeConfig.MaxSizePolicy.PER_NODE, testMapConfig2.getMaxSizeConfig().getMaxSizePolicy()); assertEquals(2, testMapConfig2.getEntryListenerConfigs().size()); for (EntryListenerConfig listener : testMapConfig2.getEntryListenerConfigs()) { if (listener.getClassName() != null) { assertNull(listener.getImplementation()); assertTrue(listener.isIncludeValue()); assertFalse(listener.isLocal()); } else { assertNotNull(listener.getImplementation()); assertEquals(entryListener, listener.getImplementation()); assertTrue(listener.isLocal()); assertTrue(listener.isIncludeValue()); } } MapConfig simpleMapConfig = config.getMapConfig("simpleMap"); assertNotNull(simpleMapConfig); assertEquals("simpleMap", simpleMapConfig.getName()); assertEquals(3, simpleMapConfig.getBackupCount()); assertEquals(1, simpleMapConfig.getAsyncBackupCount()); assertEquals(MapConfig.EvictionPolicy.LRU, simpleMapConfig.getEvictionPolicy()); assertEquals(10, simpleMapConfig.getMaxSizeConfig().getSize()); assertEquals(50, simpleMapConfig.getEvictionPercentage()); assertEquals(1, simpleMapConfig.getTimeToLiveSeconds()); assertEquals("LATEST_UPDATE", simpleMapConfig.getMergePolicy()); // Test that the simpleMapConfig does NOT have a mapStoreConfig assertNull(simpleMapConfig.getMapStoreConfig()); // Test that the simpleMapConfig does NOT have a nearCacheConfig assertNull(simpleMapConfig.getNearCacheConfig()); MapConfig testMapConfig3 = config.getMapConfig("testMap3"); assertEquals( "com.hazelcast.spring.DummyStoreFactory", testMapConfig3.getMapStoreConfig().getFactoryClassName()); assertFalse(testMapConfig3.getMapStoreConfig().getProperties().isEmpty()); assertEquals(testMapConfig3.getMapStoreConfig().getProperty("dummy.property"), "value"); MapConfig testMapConfig4 = config.getMapConfig("testMap4"); assertEquals( dummyMapStoreFactory, testMapConfig4.getMapStoreConfig().getFactoryImplementation()); }