Search in sources :

Example 96 with IndexConfig

use of com.hazelcast.config.IndexConfig in project hazelcast by hazelcast.

the class MapConfigReadOnly method getIndexConfigReadOnly.

private List<IndexConfig> getIndexConfigReadOnly() {
    List<IndexConfig> indexConfigs = super.getIndexConfigs();
    if (CollectionUtil.isEmpty(indexConfigs)) {
        return Collections.emptyList();
    }
    List<IndexConfig> readOnlyIndexConfigs = new ArrayList<>(indexConfigs.size());
    for (IndexConfig indexConfig : indexConfigs) {
        readOnlyIndexConfigs.add(new IndexConfigReadOnly(indexConfig));
    }
    return Collections.unmodifiableList(readOnlyIndexConfigs);
}
Also used : IndexConfig(com.hazelcast.config.IndexConfig) ArrayList(java.util.ArrayList)

Example 97 with IndexConfig

use of com.hazelcast.config.IndexConfig in project hazelcast by hazelcast.

the class YamlMemberDomConfigProcessor method queryCacheIndexesHandle.

@Override
protected void queryCacheIndexesHandle(Node n, QueryCacheConfig queryCacheConfig) {
    for (Node indexNode : childElements(n)) {
        IndexConfig indexConfig = IndexUtils.getIndexConfigFromYaml(indexNode, domLevel3, strict);
        queryCacheConfig.addIndexConfig(indexConfig);
    }
}
Also used : IndexConfig(com.hazelcast.config.IndexConfig) Node(org.w3c.dom.Node) YamlNode(com.hazelcast.internal.yaml.YamlNode)

Example 98 with IndexConfig

use of com.hazelcast.config.IndexConfig in project hazelcast by hazelcast.

the class GetMapConfigOperation method run.

@Override
public void run() throws Exception {
    MapService service = getService();
    MapServiceContext mapServiceContext = service.getMapServiceContext();
    MapContainer mapContainer = mapServiceContext.getMapContainer(mapName);
    MapConfig readOnlyMapConfig = mapContainer.getMapConfig();
    List<IndexConfig> indexConfigs = getIndexConfigsFromContainer(mapContainer);
    if (indexConfigs.isEmpty()) {
        mapConfig = readOnlyMapConfig;
    } else {
        MapConfig enrichedConfig = new MapConfig(readOnlyMapConfig);
        enrichedConfig.setIndexConfigs(indexConfigs);
        mapConfig = new MapConfigReadOnly(enrichedConfig);
    }
}
Also used : IndexConfig(com.hazelcast.config.IndexConfig) MapConfigReadOnly(com.hazelcast.internal.config.MapConfigReadOnly) MapConfig(com.hazelcast.config.MapConfig) MapService(com.hazelcast.map.impl.MapService) MapServiceContext(com.hazelcast.map.impl.MapServiceContext) MapContainer(com.hazelcast.map.impl.MapContainer)

Example 99 with IndexConfig

use of com.hazelcast.config.IndexConfig in project hazelcast by hazelcast.

the class ReferenceObjects method isEqual.

public static boolean isEqual(Object a, Object b) {
    if (a == b) {
        return true;
    }
    if (a == null || b == null) {
        return false;
    }
    if (a.getClass().isArray() && b.getClass().isArray()) {
        int length = Array.getLength(a);
        if (length > 0 && !a.getClass().getComponentType().equals(b.getClass().getComponentType())) {
            return false;
        }
        if (Array.getLength(b) != length) {
            return false;
        }
        for (int i = 0; i < length; i++) {
            Object aElement = Array.get(a, i);
            Object bElement = Array.get(b, i);
            if (aElement instanceof StackTraceElement && bElement instanceof StackTraceElement) {
                if (!isEqualStackTrace((StackTraceElement) aElement, (StackTraceElement) bElement)) {
                    return false;
                }
            }
            if (!isEqual(aElement, bElement)) {
                return false;
            }
        }
        return true;
    }
    if (a instanceof List && b instanceof List) {
        ListIterator e1 = ((List) a).listIterator();
        ListIterator e2 = ((List) b).listIterator();
        while (e1.hasNext() && e2.hasNext()) {
            Object o1 = e1.next();
            Object o2 = e2.next();
            if (!isEqual(o1, o2)) {
                return false;
            }
        }
        return !(e1.hasNext() || e2.hasNext());
    }
    if (a instanceof Entry && b instanceof Entry) {
        final Entry entryA = (Entry) a;
        final Entry entryB = (Entry) b;
        return isEqual(entryA.getKey(), entryB.getKey()) && isEqual(entryA.getValue(), entryB.getValue());
    }
    // following classes are list elements and have to be explicitly cast
    if (a instanceof ListenerConfigHolder && b instanceof ListenerConfigHolder) {
        return isEqual((ListenerConfigHolder) a, (ListenerConfigHolder) b);
    }
    if (a instanceof IndexConfig && b instanceof IndexConfig) {
        return isEqual((IndexConfig) a, (IndexConfig) b);
    }
    if (a instanceof AttributeConfig && b instanceof AttributeConfig) {
        return isEqual((AttributeConfig) a, (AttributeConfig) b);
    }
    if (a instanceof QueryCacheConfigHolder && b instanceof QueryCacheConfigHolder) {
        return isEqual((QueryCacheConfigHolder) a, (QueryCacheConfigHolder) b);
    }
    if (a instanceof CacheSimpleEntryListenerConfig && b instanceof CacheSimpleEntryListenerConfig) {
        return isEqual((CacheSimpleEntryListenerConfig) a, (CacheSimpleEntryListenerConfig) b);
    }
    return a.equals(b);
}
Also used : QueryCacheConfigHolder(com.hazelcast.client.impl.protocol.task.dynamicconfig.QueryCacheConfigHolder) Entry(java.util.Map.Entry) ListenerConfigHolder(com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder) IndexConfig(com.hazelcast.config.IndexConfig) List(java.util.List) ListIterator(java.util.ListIterator) AttributeConfig(com.hazelcast.config.AttributeConfig) CacheSimpleEntryListenerConfig(com.hazelcast.config.CacheSimpleEntryListenerConfig)

Example 100 with IndexConfig

use of com.hazelcast.config.IndexConfig in project hazelcast by hazelcast.

the class DynamicConfigBouncingTest method createMapConfig.

private static MapConfig createMapConfig(String mapName) {
    NearCacheConfig nearCacheConfig = new NearCacheConfig().setCacheLocalEntries(true).setInMemoryFormat(InMemoryFormat.NATIVE).setLocalUpdatePolicy(NearCacheConfig.LocalUpdatePolicy.CACHE_ON_UPDATE).setPreloaderConfig(new NearCachePreloaderConfig().setEnabled(true));
    HotRestartConfig hotRestartConfig = new HotRestartConfig().setEnabled(true).setFsync(true);
    EvictionConfig evictionConfig = new EvictionConfig();
    evictionConfig.setSize(1000).setMaxSizePolicy(MaxSizePolicy.FREE_HEAP_SIZE).setComparator(new LRUEvictionPolicyComparator());
    MapStoreConfig mapStoreConfig = new MapStoreConfig().setEnabled(true).setClassName("foo.bar.MapStoreDoesNotExist");
    WanReplicationRef wanRef = new WanReplicationRef("name", "foo.bar.PolicyClass", Collections.<String>emptyList(), true);
    EntryListenerConfig classEntryListener = new EntryListenerConfig("foo.bar.ClassName", true, true);
    EntryListenerConfig entryListener = new EntryListenerConfig(new MyEntryListener(), true, true);
    EntryListenerConfig mapListener = new EntryListenerConfig(new MyEntryUpdatedListener(), true, true);
    QueryCacheConfig queryCacheConfig = new QueryCacheConfig("queryCacheName").setBatchSize(100).addIndexConfig(new IndexConfig(IndexType.HASH, "attribute")).addEntryListenerConfig(new EntryListenerConfig("foo.bar.Classname", false, true)).setInMemoryFormat(InMemoryFormat.OBJECT);
    return new MapConfig(mapName).setBackupCount(2).setBackupCount(3).setTimeToLiveSeconds(12).setMaxIdleSeconds(20).setNearCacheConfig(nearCacheConfig).setReadBackupData(true).setCacheDeserializedValues(CacheDeserializedValues.ALWAYS).setInMemoryFormat(InMemoryFormat.OBJECT).setHotRestartConfig(hotRestartConfig).setEvictionConfig(evictionConfig).setMapStoreConfig(mapStoreConfig).setWanReplicationRef(wanRef).addEntryListenerConfig(classEntryListener).addEntryListenerConfig(entryListener).addEntryListenerConfig(mapListener).addMapPartitionLostListenerConfig(new MapPartitionLostListenerConfig("foo.bar.Classname")).addIndexConfig(new IndexConfig(IndexType.SORTED, "orderAttribute")).addIndexConfig(new IndexConfig(IndexType.HASH, "unorderedAttribute")).addAttributeConfig(new AttributeConfig("attribute", "foo.bar.ExtractorClass")).addQueryCacheConfig(queryCacheConfig).setStatisticsEnabled(false).setPerEntryStatsEnabled(true).setPartitioningStrategyConfig(new PartitioningStrategyConfig("foo.bar.Class")).setSplitBrainProtectionName("split-brain-protection");
}
Also used : HotRestartConfig(com.hazelcast.config.HotRestartConfig) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) MapPartitionLostListenerConfig(com.hazelcast.config.MapPartitionLostListenerConfig) WanReplicationRef(com.hazelcast.config.WanReplicationRef) EvictionConfig(com.hazelcast.config.EvictionConfig) NearCacheConfig(com.hazelcast.config.NearCacheConfig) MapStoreConfig(com.hazelcast.config.MapStoreConfig) EntryListenerConfig(com.hazelcast.config.EntryListenerConfig) PartitioningStrategyConfig(com.hazelcast.config.PartitioningStrategyConfig) IndexConfig(com.hazelcast.config.IndexConfig) NearCachePreloaderConfig(com.hazelcast.config.NearCachePreloaderConfig) LRUEvictionPolicyComparator(com.hazelcast.internal.eviction.impl.comparator.LRUEvictionPolicyComparator) MapConfig(com.hazelcast.config.MapConfig) AttributeConfig(com.hazelcast.config.AttributeConfig)

Aggregations

IndexConfig (com.hazelcast.config.IndexConfig)130 Test (org.junit.Test)49 QuickTest (com.hazelcast.test.annotation.QuickTest)45 Config (com.hazelcast.config.Config)42 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)38 MapConfig (com.hazelcast.config.MapConfig)34 HazelcastInstance (com.hazelcast.core.HazelcastInstance)29 ArrayList (java.util.ArrayList)16 Before (org.junit.Before)13 MapStoreConfig (com.hazelcast.config.MapStoreConfig)12 InternalIndex (com.hazelcast.query.impl.InternalIndex)12 AttributeConfig (com.hazelcast.config.AttributeConfig)9 MapContainer (com.hazelcast.map.impl.MapContainer)9 IndexRangeFilter (com.hazelcast.sql.impl.exec.scan.index.IndexRangeFilter)9 QueryCacheConfig (com.hazelcast.config.QueryCacheConfig)8 Node (org.w3c.dom.Node)8 EntryListenerConfig (com.hazelcast.config.EntryListenerConfig)7 IMap (com.hazelcast.map.IMap)7 Indexes (com.hazelcast.query.impl.Indexes)7 ExpressionEvalContext (com.hazelcast.sql.impl.expression.ExpressionEvalContext)7