diff options
Diffstat (limited to 'cps-service/src/main')
-rw-r--r-- | cps-service/src/main/java/org/onap/cps/cache/AnchorDataCacheConfig.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/cps-service/src/main/java/org/onap/cps/cache/AnchorDataCacheConfig.java b/cps-service/src/main/java/org/onap/cps/cache/AnchorDataCacheConfig.java index 54d6ff3953..3acba0bb3b 100644 --- a/cps-service/src/main/java/org/onap/cps/cache/AnchorDataCacheConfig.java +++ b/cps-service/src/main/java/org/onap/cps/cache/AnchorDataCacheConfig.java @@ -1,6 +1,6 @@ /* * ============LICENSE_START======================================================== - * Copyright (C) 2022 Nordix Foundation + * Copyright (C) 2022-2023 Nordix Foundation * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,15 +26,24 @@ import com.hazelcast.config.NamedConfig; import com.hazelcast.core.Hazelcast; import com.hazelcast.core.HazelcastInstance; import com.hazelcast.map.IMap; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * Core infrastructure of the hazelcast distributed cache for anchor data config use cases. */ +@Slf4j @Configuration public class AnchorDataCacheConfig { + @Value("${hazelcast.mode.kubernetes.enabled}") + private boolean cacheKubernetesEnabled; + + @Value("${hazelcast.mode.kubernetes.service-name}") + private String cacheKubernetesServiceName; + private static final MapConfig anchorDataCacheMapConfig = createMapConfig("anchorDataCacheMapConfig"); /** @@ -57,6 +66,7 @@ public class AnchorDataCacheConfig { final Config config = new Config(instanceName); config.addMapConfig((MapConfig) namedConfig); config.setClusterName("cps-service-caches"); + updateDiscoveryMode(config); return config; } @@ -67,4 +77,12 @@ public class AnchorDataCacheConfig { return mapConfig; } + private void updateDiscoveryMode(final Config config) { + if (cacheKubernetesEnabled) { + log.info("Enabling kubernetes mode with service-name : {}", cacheKubernetesServiceName); + config.getNetworkConfig().getJoin().getKubernetesConfig().setEnabled(true) + .setProperty("service-name", cacheKubernetesServiceName); + } + } + } |