/** * Hazelcast config config. * * @return the config */ @Bean public Config hazelcastConfig() { return new Config().setProperty("hazelcast.jmx", "true") .addMapConfig(new MapConfig("spring-boot-admin-application-store").setBackupCount(1) .setEvictionPolicy(EvictionPolicy.NONE)) .addListConfig(new ListConfig("spring-boot-admin-event-store").setBackupCount(1) .setMaxSize(1000)); }
private void handleList(Node node) { Node attName = node.getAttributes().getNamedItem("name"); String name = getTextContent(attName); ListConfig lConfig = new ListConfig(); lConfig.setName(name); for (Node n : childElements(node)) { String nodeName = cleanNodeName(n); String value = getTextContent(n).trim(); if ("max-size".equals(nodeName)) { lConfig.setMaxSize(getIntegerValue("max-size", value)); } else if ("backup-count".equals(nodeName)) { lConfig.setBackupCount(getIntegerValue("backup-count", value)); } else if ("async-backup-count".equals(nodeName)) { lConfig.setAsyncBackupCount(getIntegerValue("async-backup-count", value)); } else if ("item-listeners".equals(nodeName)) { for (Node listenerNode : childElements(n)) { boolean incValue = getBooleanValue(getTextContent(attrs.getNamedItem("include-value"))); String listenerClass = getTextContent(listenerNode); lConfig.addItemListenerConfig(new ItemListenerConfig(listenerClass, incValue)); lConfig.setStatisticsEnabled(getBooleanValue(value)); } else if ("quorum-ref".equals(nodeName)) { lConfig.setQuorumName(value); } else if ("merge-policy".equals(nodeName)) { MergePolicyConfig mergePolicyConfig = createMergePolicyConfig(n); lConfig.setMergePolicyConfig(mergePolicyConfig);
@Override protected IdentifiedDataSerializable getConfig() { ListConfig config = new ListConfig(parameters.name); config.setAsyncBackupCount(parameters.asyncBackupCount); config.setBackupCount(parameters.backupCount); config.setMaxSize(parameters.maxSize); config.setStatisticsEnabled(parameters.statisticsEnabled); if (parameters.listenerConfigs != null && !parameters.listenerConfigs.isEmpty()) { List<ItemListenerConfig> itemListenerConfigs = (List<ItemListenerConfig>) adaptListenerConfigs(parameters.listenerConfigs); config.setItemListenerConfigs(itemListenerConfigs); } MergePolicyConfig mergePolicyConfig = mergePolicyConfig(parameters.mergePolicyExist, parameters.mergePolicy, parameters.mergeBatchSize); config.setMergePolicyConfig(mergePolicyConfig); return config; }
@Override public Config addListConfig(ListConfig listConfig) { List<ListenerConfigHolder> listenerConfigs = adaptListenerConfigs(listConfig.getItemListenerConfigs()); ClientMessage request = DynamicConfigAddListConfigCodec.encodeRequest(listConfig.getName(), listenerConfigs, listConfig.getBackupCount(), listConfig.getAsyncBackupCount(), listConfig.getMaxSize(), listConfig.isStatisticsEnabled(), listConfig.getQuorumName(), listConfig.getMergePolicyConfig().getPolicy(), listConfig.getMergePolicyConfig().getBatchSize()); invoke(request); return this; }
public static void main(String[] args) { // for a custom merge policy we have to provide the FQCN, not just the simple classname MergePolicyConfig mergePolicyConfig = new MergePolicyConfig() .setPolicy(MergeCollectionOfIntegerValuesMergePolicy.class.getName()); final ListConfig listConfig = new ListConfig() .setName(LIST_NAME) .setMergePolicyConfig(mergePolicyConfig); final Config config = new Config() //.setProperty("hazelcast.logging.type", "none") .addListConfig(listConfig); HazelcastInstanceFactory.newHazelcastInstance(config); Hazelcast.shutdownAll(); } }
ListConfig jobConfig = new ListConfig(); jobConfig.setName(JOBS); ListConfig replicateConfig = new ListConfig(); replicateConfig.setName(REPLICATE_WEIGHTS); conf.addMapConfig(referenceConfig); ListConfig topicsConfig = new ListConfig(); topicsConfig.setName(TOPICS); ListConfig updatesConfig = new ListConfig(); updatesConfig.setName(UPDATES); ListConfig availableWorkersConfig = new ListConfig(); availableWorkersConfig.setName(AVAILABLE_WORKERS); conf.addListConfig(availableWorkersConfig);
public ListConfig(String name) { setName(name); }
@Override public IdentifiedDataSerializable createNew(Integer arg) { return new ListConfig(); } };
@Override public ListConfig findListConfig(String name) { return getListConfigInternal(name, "default").getAsReadOnly(); }
@Override public List<ItemListenerConfig> getItemListenerConfigs() { final List<ItemListenerConfig> itemListenerConfigs = super.getItemListenerConfigs(); final List<ItemListenerConfig> readOnlyItemListenerConfigs = new ArrayList<ItemListenerConfig>(itemListenerConfigs.size()); for (ItemListenerConfig itemListenerConfig : itemListenerConfigs) { readOnlyItemListenerConfigs.add(itemListenerConfig.getAsReadOnly()); } return Collections.unmodifiableList(readOnlyItemListenerConfigs); }
private void handleList(Node node) { Node attName = node.getAttributes().getNamedItem("name"); String name = getTextContent(attName); ListConfig lConfig = new ListConfig(); lConfig.setName(name); for (Node n : childElements(node)) { String nodeName = cleanNodeName(n); String value = getTextContent(n).trim(); if ("max-size".equals(nodeName)) { lConfig.setMaxSize(getIntegerValue("max-size", value)); } else if ("backup-count".equals(nodeName)) { lConfig.setBackupCount(getIntegerValue("backup-count", value)); } else if ("async-backup-count".equals(nodeName)) { lConfig.setAsyncBackupCount(getIntegerValue("async-backup-count", value)); } else if ("item-listeners".equals(nodeName)) { for (Node listenerNode : childElements(n)) { boolean incValue = getBooleanValue(getTextContent(attrs.getNamedItem("include-value"))); String listenerClass = getTextContent(listenerNode); lConfig.addItemListenerConfig(new ItemListenerConfig(listenerClass, incValue)); lConfig.setStatisticsEnabled(getBooleanValue(value)); } else if ("quorum-ref".equals(nodeName)) { lConfig.setQuorumName(value); } else if ("merge-policy".equals(nodeName)) { MergePolicyConfig mergePolicyConfig = createMergePolicyConfig(n); lConfig.setMergePolicyConfig(mergePolicyConfig);
@Override protected IdentifiedDataSerializable getConfig() { ListConfig config = new ListConfig(parameters.name); config.setAsyncBackupCount(parameters.asyncBackupCount); config.setBackupCount(parameters.backupCount); config.setMaxSize(parameters.maxSize); config.setStatisticsEnabled(parameters.statisticsEnabled); if (parameters.listenerConfigs != null && !parameters.listenerConfigs.isEmpty()) { List<ItemListenerConfig> itemListenerConfigs = (List<ItemListenerConfig>) adaptListenerConfigs(parameters.listenerConfigs); config.setItemListenerConfigs(itemListenerConfigs); } MergePolicyConfig mergePolicyConfig = mergePolicyConfig(parameters.mergePolicyExist, parameters.mergePolicy, parameters.mergeBatchSize); config.setMergePolicyConfig(mergePolicyConfig); return config; }
@Override public Config addListConfig(ListConfig listConfig) { List<ListenerConfigHolder> listenerConfigs = adaptListenerConfigs(listConfig.getItemListenerConfigs()); ClientMessage request = DynamicConfigAddListConfigCodec.encodeRequest(listConfig.getName(), listenerConfigs, listConfig.getBackupCount(), listConfig.getAsyncBackupCount(), listConfig.getMaxSize(), listConfig.isStatisticsEnabled(), listConfig.getQuorumName(), listConfig.getMergePolicyConfig().getPolicy(), listConfig.getMergePolicyConfig().getBatchSize()); invoke(request); return this; }
public ListConfig(String name) { setName(name); }
@Override public IdentifiedDataSerializable createNew(Integer arg) { return new ListConfig(); } };
@Override public ListConfig findListConfig(String name) { return getListConfigInternal(name, "default").getAsReadOnly(); }
@Override public List<ItemListenerConfig> getItemListenerConfigs() { final List<ItemListenerConfig> itemListenerConfigs = super.getItemListenerConfigs(); final List<ItemListenerConfig> readOnlyItemListenerConfigs = new ArrayList<ItemListenerConfig>(itemListenerConfigs.size()); for (ItemListenerConfig itemListenerConfig : itemListenerConfigs) { readOnlyItemListenerConfigs.add(itemListenerConfig.getAsReadOnly()); } return Collections.unmodifiableList(readOnlyItemListenerConfigs); }
/** * Sets the map of {@link com.hazelcast.core.IList} configurations, * mapped by config name. The config name may be a pattern with which the * configuration will be obtained in the future. * * @param listConfigs the list configuration map to set * @return this config instance */ public Config setListConfigs(Map<String, ListConfig> listConfigs) { this.listConfigs.clear(); this.listConfigs.putAll(listConfigs); for (Entry<String, ListConfig> entry : listConfigs.entrySet()) { entry.getValue().setName(entry.getKey()); } return this; }
/** * Returns a read-only {@link com.hazelcast.core.IList} configuration for * the given name. * <p> * The name is matched by pattern to the configuration and by stripping the * partition ID qualifier from the given {@code name}. * If there is no config found by the name, it will return the configuration * with the name {@code default}. * * @param name name of the list config * @return the list configuration * @throws ConfigurationException if ambiguous configurations are found * @see StringPartitioningStrategy#getBaseName(java.lang.String) * @see #setConfigPatternMatcher(ConfigPatternMatcher) * @see #getConfigPatternMatcher() * @see EvictionConfig#setSize(int) */ public ListConfig findListConfig(String name) { name = getBaseName(name); ListConfig config = lookupByPattern(configPatternMatcher, listConfigs, name); if (config != null) { return config.getAsReadOnly(); } return getListConfig("default").getAsReadOnly(); }
/** * Sets the map of {@link com.hazelcast.core.IList} configurations, * mapped by config name. The config name may be a pattern with which the * configuration will be obtained in the future. * * @param listConfigs the list configuration map to set * @return this config instance */ public Config setListConfigs(Map<String, ListConfig> listConfigs) { this.listConfigs.clear(); this.listConfigs.putAll(listConfigs); for (Entry<String, ListConfig> entry : listConfigs.entrySet()) { entry.getValue().setName(entry.getKey()); } return this; }