Search in sources :

Example 1 with ExecutorConfig

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

the class DistributedExecutorService method getOrFindExecutorConfig.

/**
 * Locate the {@code ExecutorConfig} in local {@link
 * #executorConfigCache} or find it from {@link
 * NodeEngine#getConfig()} and cache it locally.
 */
private ExecutorConfig getOrFindExecutorConfig(String name) {
    ExecutorConfig cfg = executorConfigCache.get(name);
    if (cfg != null) {
        return cfg;
    } else {
        cfg = nodeEngine.getConfig().findExecutorConfig(name);
        ExecutorConfig executorConfig = executorConfigCache.putIfAbsent(name, cfg);
        return executorConfig == null ? cfg : executorConfig;
    }
}
Also used : ExecutorConfig(com.hazelcast.config.ExecutorConfig)

Example 2 with ExecutorConfig

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

the class ClusterWideConfigurationService method registerConfigLocally.

/**
 * Register a dynamic configuration in a local member. When a dynamic configuration with the same name already
 * exists then this call has no effect.
 *
 * @param newConfig       Configuration to register.
 * @param configCheckMode behaviour when a config is detected
 * @throws UnsupportedOperationException when given configuration type is not supported
 * @throws InvalidConfigurationException when conflict is detected and configCheckMode is on THROW_EXCEPTION
 */
@SuppressWarnings("checkstyle:methodlength")
public void registerConfigLocally(IdentifiedDataSerializable newConfig, ConfigCheckMode configCheckMode) {
    IdentifiedDataSerializable currentConfig;
    if (newConfig instanceof MultiMapConfig) {
        MultiMapConfig multiMapConfig = (MultiMapConfig) newConfig;
        currentConfig = multiMapConfigs.putIfAbsent(multiMapConfig.getName(), multiMapConfig);
    } else if (newConfig instanceof MapConfig) {
        MapConfig newMapConfig = (MapConfig) newConfig;
        currentConfig = mapConfigs.putIfAbsent(newMapConfig.getName(), newMapConfig);
        if (currentConfig == null) {
            listener.onConfigRegistered(newMapConfig);
        }
    } else if (newConfig instanceof CardinalityEstimatorConfig) {
        CardinalityEstimatorConfig cardinalityEstimatorConfig = (CardinalityEstimatorConfig) newConfig;
        currentConfig = cardinalityEstimatorConfigs.putIfAbsent(cardinalityEstimatorConfig.getName(), cardinalityEstimatorConfig);
    } else if (newConfig instanceof RingbufferConfig) {
        RingbufferConfig ringbufferConfig = (RingbufferConfig) newConfig;
        currentConfig = ringbufferConfigs.putIfAbsent(ringbufferConfig.getName(), ringbufferConfig);
    } else if (newConfig instanceof ListConfig) {
        ListConfig listConfig = (ListConfig) newConfig;
        currentConfig = listConfigs.putIfAbsent(listConfig.getName(), listConfig);
    } else if (newConfig instanceof SetConfig) {
        SetConfig setConfig = (SetConfig) newConfig;
        currentConfig = setConfigs.putIfAbsent(setConfig.getName(), setConfig);
    } else if (newConfig instanceof ReplicatedMapConfig) {
        ReplicatedMapConfig replicatedMapConfig = (ReplicatedMapConfig) newConfig;
        currentConfig = replicatedMapConfigs.putIfAbsent(replicatedMapConfig.getName(), replicatedMapConfig);
    } else if (newConfig instanceof TopicConfig) {
        TopicConfig topicConfig = (TopicConfig) newConfig;
        currentConfig = topicConfigs.putIfAbsent(topicConfig.getName(), topicConfig);
    } else if (newConfig instanceof ExecutorConfig) {
        ExecutorConfig executorConfig = (ExecutorConfig) newConfig;
        currentConfig = executorConfigs.putIfAbsent(executorConfig.getName(), executorConfig);
    } else if (newConfig instanceof DurableExecutorConfig) {
        DurableExecutorConfig durableExecutorConfig = (DurableExecutorConfig) newConfig;
        currentConfig = durableExecutorConfigs.putIfAbsent(durableExecutorConfig.getName(), durableExecutorConfig);
    } else if (newConfig instanceof ScheduledExecutorConfig) {
        ScheduledExecutorConfig scheduledExecutorConfig = (ScheduledExecutorConfig) newConfig;
        currentConfig = scheduledExecutorConfigs.putIfAbsent(scheduledExecutorConfig.getName(), scheduledExecutorConfig);
    } else if (newConfig instanceof QueueConfig) {
        QueueConfig queueConfig = (QueueConfig) newConfig;
        currentConfig = queueConfigs.putIfAbsent(queueConfig.getName(), queueConfig);
    } else if (newConfig instanceof ReliableTopicConfig) {
        ReliableTopicConfig reliableTopicConfig = (ReliableTopicConfig) newConfig;
        currentConfig = reliableTopicConfigs.putIfAbsent(reliableTopicConfig.getName(), reliableTopicConfig);
    } else if (newConfig instanceof CacheSimpleConfig) {
        CacheSimpleConfig cacheSimpleConfig = (CacheSimpleConfig) newConfig;
        currentConfig = cacheSimpleConfigs.putIfAbsent(cacheSimpleConfig.getName(), cacheSimpleConfig);
        if (currentConfig == null) {
            listener.onConfigRegistered(cacheSimpleConfig);
        }
    } else if (newConfig instanceof FlakeIdGeneratorConfig) {
        FlakeIdGeneratorConfig config = (FlakeIdGeneratorConfig) newConfig;
        currentConfig = flakeIdGeneratorConfigs.putIfAbsent(config.getName(), config);
    } else if (newConfig instanceof PNCounterConfig) {
        PNCounterConfig config = (PNCounterConfig) newConfig;
        currentConfig = pnCounterConfigs.putIfAbsent(config.getName(), config);
    } else {
        throw new UnsupportedOperationException("Unsupported config type: " + newConfig);
    }
    checkCurrentConfigNullOrEqual(configCheckMode, currentConfig, newConfig);
    persist(newConfig);
}
Also used : IdentifiedDataSerializable(com.hazelcast.nio.serialization.IdentifiedDataSerializable) CacheSimpleConfig(com.hazelcast.config.CacheSimpleConfig) QueueConfig(com.hazelcast.config.QueueConfig) ReliableTopicConfig(com.hazelcast.config.ReliableTopicConfig) DurableExecutorConfig(com.hazelcast.config.DurableExecutorConfig) MultiMapConfig(com.hazelcast.config.MultiMapConfig) ScheduledExecutorConfig(com.hazelcast.config.ScheduledExecutorConfig) ReliableTopicConfig(com.hazelcast.config.ReliableTopicConfig) TopicConfig(com.hazelcast.config.TopicConfig) PNCounterConfig(com.hazelcast.config.PNCounterConfig) ExecutorConfig(com.hazelcast.config.ExecutorConfig) ScheduledExecutorConfig(com.hazelcast.config.ScheduledExecutorConfig) DurableExecutorConfig(com.hazelcast.config.DurableExecutorConfig) FlakeIdGeneratorConfig(com.hazelcast.config.FlakeIdGeneratorConfig) ReplicatedMapConfig(com.hazelcast.config.ReplicatedMapConfig) RingbufferConfig(com.hazelcast.config.RingbufferConfig) SetConfig(com.hazelcast.config.SetConfig) MapConfig(com.hazelcast.config.MapConfig) MultiMapConfig(com.hazelcast.config.MultiMapConfig) ReplicatedMapConfig(com.hazelcast.config.ReplicatedMapConfig) ListConfig(com.hazelcast.config.ListConfig) CardinalityEstimatorConfig(com.hazelcast.config.CardinalityEstimatorConfig)

Example 3 with ExecutorConfig

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

the class DynamicConfigYamlGenerator method executorYamlGenerator.

public static void executorYamlGenerator(Map<String, Object> parent, Config config) {
    if (config.getExecutorConfigs().isEmpty()) {
        return;
    }
    Map<String, Object> child = new LinkedHashMap<>();
    for (ExecutorConfig subConfigAsObject : config.getExecutorConfigs().values()) {
        Map<String, Object> subConfigAsMap = new LinkedHashMap<>();
        addNonNullToMap(subConfigAsMap, "statistics-enabled", subConfigAsObject.isStatisticsEnabled());
        addNonNullToMap(subConfigAsMap, "pool-size", subConfigAsObject.getPoolSize());
        addNonNullToMap(subConfigAsMap, "queue-capacity", subConfigAsObject.getQueueCapacity());
        addNonNullToMap(subConfigAsMap, "split-brain-protection-ref", subConfigAsObject.getSplitBrainProtectionName());
        child.put(subConfigAsObject.getName(), subConfigAsMap);
    }
    parent.put("executor-service", child);
}
Also used : LinkedHashMap(java.util.LinkedHashMap) ExecutorConfig(com.hazelcast.config.ExecutorConfig) ScheduledExecutorConfig(com.hazelcast.config.ScheduledExecutorConfig) DurableExecutorConfig(com.hazelcast.config.DurableExecutorConfig)

Example 4 with ExecutorConfig

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

the class AddExecutorConfigMessageTask method checkStaticConfigDoesNotExist.

@Override
protected boolean checkStaticConfigDoesNotExist(IdentifiedDataSerializable config) {
    DynamicConfigurationAwareConfig nodeConfig = (DynamicConfigurationAwareConfig) nodeEngine.getConfig();
    ExecutorConfig executorConfig = (ExecutorConfig) config;
    return nodeConfig.checkStaticConfigDoesNotExist(nodeConfig.getStaticConfig().getExecutorConfigs(), executorConfig.getName(), executorConfig);
}
Also used : DynamicConfigurationAwareConfig(com.hazelcast.internal.dynamicconfig.DynamicConfigurationAwareConfig) ExecutorConfig(com.hazelcast.config.ExecutorConfig)

Example 5 with ExecutorConfig

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

the class AbstractSplitBrainProtectionTest method newExecConfig.

protected static ExecutorConfig newExecConfig(SplitBrainProtectionOn splitBrainProtectionOn, String splitBrainProtectionName, String postfix) {
    ExecutorConfig config = new ExecutorConfig(EXEC_NAME + splitBrainProtectionOn.name() + postfix);
    config.setSplitBrainProtectionName(splitBrainProtectionName);
    return config;
}
Also used : ExecutorConfig(com.hazelcast.config.ExecutorConfig) ScheduledExecutorConfig(com.hazelcast.config.ScheduledExecutorConfig) DurableExecutorConfig(com.hazelcast.config.DurableExecutorConfig)

Aggregations

ExecutorConfig (com.hazelcast.config.ExecutorConfig)30 DurableExecutorConfig (com.hazelcast.config.DurableExecutorConfig)15 ScheduledExecutorConfig (com.hazelcast.config.ScheduledExecutorConfig)15 Config (com.hazelcast.config.Config)12 Test (org.junit.Test)11 QuickTest (com.hazelcast.test.annotation.QuickTest)10 HazelcastInstance (com.hazelcast.core.HazelcastInstance)9 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)9 IExecutorService (com.hazelcast.core.IExecutorService)6 CacheSimpleConfig (com.hazelcast.config.CacheSimpleConfig)5 CardinalityEstimatorConfig (com.hazelcast.config.CardinalityEstimatorConfig)5 FlakeIdGeneratorConfig (com.hazelcast.config.FlakeIdGeneratorConfig)5 ListConfig (com.hazelcast.config.ListConfig)5 MapConfig (com.hazelcast.config.MapConfig)5 MultiMapConfig (com.hazelcast.config.MultiMapConfig)5 PNCounterConfig (com.hazelcast.config.PNCounterConfig)5 QueueConfig (com.hazelcast.config.QueueConfig)5 ReliableTopicConfig (com.hazelcast.config.ReliableTopicConfig)5 ReplicatedMapConfig (com.hazelcast.config.ReplicatedMapConfig)5 RingbufferConfig (com.hazelcast.config.RingbufferConfig)5