use of com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder in project hazelcast by hazelcast.
the class ClientDynamicClusterConfig method addCacheConfig.
@Override
public Config addCacheConfig(CacheSimpleConfig cacheConfig) {
List<ListenerConfigHolder> partitionLostListenerConfigs = adaptListenerConfigs(cacheConfig.getPartitionLostListenerConfigs());
DataPersistenceAndHotRestartMerger.merge(cacheConfig.getHotRestartConfig(), cacheConfig.getDataPersistenceConfig());
ClientMessage request = DynamicConfigAddCacheConfigCodec.encodeRequest(cacheConfig.getName(), cacheConfig.getKeyType(), cacheConfig.getValueType(), cacheConfig.isStatisticsEnabled(), cacheConfig.isManagementEnabled(), cacheConfig.isReadThrough(), cacheConfig.isWriteThrough(), cacheConfig.getCacheLoaderFactory(), cacheConfig.getCacheWriterFactory(), cacheConfig.getCacheLoader(), cacheConfig.getCacheWriter(), cacheConfig.getBackupCount(), cacheConfig.getAsyncBackupCount(), cacheConfig.getInMemoryFormat().name(), cacheConfig.getSplitBrainProtectionName(), cacheConfig.getMergePolicyConfig().getPolicy(), cacheConfig.getMergePolicyConfig().getBatchSize(), cacheConfig.isDisablePerEntryInvalidationEvents(), partitionLostListenerConfigs, cacheConfig.getExpiryPolicyFactoryConfig() == null ? null : cacheConfig.getExpiryPolicyFactoryConfig().getClassName(), cacheConfig.getExpiryPolicyFactoryConfig() == null ? null : cacheConfig.getExpiryPolicyFactoryConfig().getTimedExpiryPolicyFactoryConfig(), cacheConfig.getCacheEntryListeners(), EvictionConfigHolder.of(cacheConfig.getEvictionConfig(), serializationService), cacheConfig.getWanReplicationRef(), cacheConfig.getEventJournalConfig(), cacheConfig.getHotRestartConfig(), cacheConfig.getMerkleTreeConfig());
invoke(request);
return this;
}
use of com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder in project hazelcast by hazelcast.
the class ClientDynamicClusterConfig method addQueueConfig.
@Override
public Config addQueueConfig(QueueConfig queueConfig) {
List<ListenerConfigHolder> listenerConfigs = adaptListenerConfigs(queueConfig.getItemListenerConfigs());
QueueStoreConfigHolder queueStoreConfigHolder = QueueStoreConfigHolder.of(queueConfig.getQueueStoreConfig(), serializationService);
ClientMessage request = DynamicConfigAddQueueConfigCodec.encodeRequest(queueConfig.getName(), listenerConfigs, queueConfig.getBackupCount(), queueConfig.getAsyncBackupCount(), queueConfig.getMaxSize(), queueConfig.getEmptyQueueTtl(), queueConfig.isStatisticsEnabled(), queueConfig.getSplitBrainProtectionName(), queueStoreConfigHolder, queueConfig.getMergePolicyConfig().getPolicy(), queueConfig.getMergePolicyConfig().getBatchSize(), queueConfig.getPriorityComparatorClassName());
invoke(request);
return this;
}
use of com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder in project hazelcast by hazelcast.
the class ClientDynamicClusterConfig method addTopicConfig.
@Override
public Config addTopicConfig(TopicConfig topicConfig) {
List<ListenerConfigHolder> listenerConfigHolders = adaptListenerConfigs(topicConfig.getMessageListenerConfigs());
ClientMessage request = DynamicConfigAddTopicConfigCodec.encodeRequest(topicConfig.getName(), topicConfig.isGlobalOrderingEnabled(), topicConfig.isStatisticsEnabled(), topicConfig.isMultiThreadingEnabled(), listenerConfigHolders);
invoke(request);
return this;
}
use of com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder 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);
}
use of com.hazelcast.client.impl.protocol.task.dynamicconfig.ListenerConfigHolder in project hazelcast by hazelcast.
the class ClientDynamicClusterConfig method addSetConfig.
@Override
public Config addSetConfig(SetConfig setConfig) {
List<ListenerConfigHolder> listenerConfigs = adaptListenerConfigs(setConfig.getItemListenerConfigs());
ClientMessage request = DynamicConfigAddSetConfigCodec.encodeRequest(setConfig.getName(), listenerConfigs, setConfig.getBackupCount(), setConfig.getAsyncBackupCount(), setConfig.getMaxSize(), setConfig.isStatisticsEnabled(), setConfig.getSplitBrainProtectionName(), setConfig.getMergePolicyConfig().getPolicy(), setConfig.getMergePolicyConfig().getBatchSize());
invoke(request);
return this;
}
Aggregations