use of com.hazelcast.config.WanSyncConfig in project hazelcast by hazelcast.
the class WanBatchPublisherConfigDTO method toJson.
@Override
@SuppressWarnings({ "checkstyle:cyclomaticcomplexity", "checkstyle:npathcomplexity" })
public JsonObject toJson() {
JsonObject root = new JsonObject();
root.add("clusterName", config.getClusterName());
if (config.getPublisherId() != null) {
root.add("publisherId", config.getPublisherId());
}
root.add("batchSize", config.getBatchSize());
root.add("batchMaxDelayMillis", config.getBatchMaxDelayMillis());
root.add("responseTimeoutMillis", config.getResponseTimeoutMillis());
if (config.getAcknowledgeType() != null) {
root.add("acknowledgeType", config.getAcknowledgeType().getId());
}
if (config.getInitialPublisherState() != null) {
root.add("initialPublisherState", config.getInitialPublisherState().getId());
}
root.add("snapshotEnabled", config.isSnapshotEnabled());
root.add("idleMaxParkNs", config.getIdleMaxParkNs());
root.add("idleMinParkNs", config.getIdleMinParkNs());
root.add("maxConcurrentInvocations", config.getMaxConcurrentInvocations());
root.add("discoveryPeriodSeconds", config.getDiscoveryPeriodSeconds());
root.add("useEndpointPrivateAddress", config.isUseEndpointPrivateAddress());
if (config.getQueueFullBehavior() != null) {
root.add("queueFullBehavior", config.getQueueFullBehavior().getId());
}
root.add("maxTargetEndpoints", config.getMaxTargetEndpoints());
root.add("queueCapacity", config.getQueueCapacity());
if (config.getTargetEndpoints() != null) {
root.add("targetEndpoints", config.getTargetEndpoints());
}
serializeAliasedDiscoveryConfig(root, "aws", config.getAwsConfig());
serializeAliasedDiscoveryConfig(root, "gcp", config.getGcpConfig());
serializeAliasedDiscoveryConfig(root, "azure", config.getAzureConfig());
serializeAliasedDiscoveryConfig(root, "kubernetes", config.getKubernetesConfig());
serializeAliasedDiscoveryConfig(root, "eureka", config.getEurekaConfig());
DiscoveryConfig discoveryConfig = config.getDiscoveryConfig();
if (discoveryConfig != null) {
root.add("discovery", new DiscoveryConfigDTO(discoveryConfig).toJson());
}
WanSyncConfig syncConfig = config.getSyncConfig();
if (syncConfig != null) {
root.add("sync", new WanSyncConfigDTO(syncConfig).toJson());
}
if (config.getEndpoint() != null) {
root.add("endpoint", config.getEndpoint());
}
if (!isNullOrEmpty(config.getProperties())) {
root.add("properties", toJsonObject(config.getProperties()));
}
return root;
}
use of com.hazelcast.config.WanSyncConfig in project hazelcast by hazelcast.
the class WanSyncConfigDTO method fromJson.
@Override
public void fromJson(JsonObject json) {
config = new WanSyncConfig();
JsonValue consistencyCheckStrategy = json.get("consistencyCheckStrategy");
if (consistencyCheckStrategy != null && !consistencyCheckStrategy.isNull()) {
config.setConsistencyCheckStrategy(ConsistencyCheckStrategy.getById((byte) consistencyCheckStrategy.asInt()));
}
}
use of com.hazelcast.config.WanSyncConfig in project hazelcast by hazelcast.
the class WanSyncConfigDTOTest method testSerialization.
@Test
public void testSerialization() {
WanSyncConfig expected = new WanSyncConfig().setConsistencyCheckStrategy(ConsistencyCheckStrategy.MERKLE_TREES);
WanSyncConfig actual = cloneThroughJson(expected);
assertTrue("Expected: " + expected + ", got:" + actual, WAN_SYNC_CONFIG_CHECKER.check(expected, actual));
}
Aggregations