Merge "Migrate CPS to Spring-boot 3.0"
[cps.git] / cps-ncmp-service / src / main / java / org / onap / cps / ncmp / api / impl / config / embeddedcache / TrustLevelCacheConfig.java
index 816fc50..ebe9905 100644 (file)
 package org.onap.cps.ncmp.api.impl.config.embeddedcache;
 
 import com.hazelcast.collection.ISet;
+import com.hazelcast.config.MapConfig;
 import com.hazelcast.config.SetConfig;
+import com.hazelcast.map.IMap;
 import org.onap.cps.cache.HazelcastCacheConfig;
+import org.onap.cps.ncmp.api.impl.trustlevel.TrustLevel;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 @Configuration
 public class TrustLevelCacheConfig extends HazelcastCacheConfig {
 
-    private static final SetConfig untrustworthyCmHandlesSetConfig = createSetConfig("untrustworthyCmHandlesSetConfig");
+    private static final SetConfig untrustworthyCmHandlesSetConfig =
+            createSetConfig("untrustworthyCmHandlesSetConfig");
+
+    private static final MapConfig trustLevelPerDmiPluginCacheConfig =
+            createMapConfig("trustLevelPerDmiPluginCacheConfig");
 
     /**
-     * Untrustworthy cmhandle set instance.
+     * Distributed collection of untrustworthy cm handles.
      *
-     * @return instance of distributed set of untrustworthy cmhandles.
+     * @return instance of distributed set of untrustworthy cm handles.
      */
     @Bean
     public ISet<String> untrustworthyCmHandlesSet() {
-        return createHazelcastInstance("untrustworthyCmHandlesSet", untrustworthyCmHandlesSetConfig).getSet(
-                "untrustworthyCmHandlesSet");
+        return createHazelcastInstance("untrustworthyCmHandlesSet",
+                untrustworthyCmHandlesSetConfig).getSet("untrustworthyCmHandlesSet");
     }
 
+    /**
+     * Distributed instance of trust level cache containing the trust level per dmi plugin service(name).
+     *
+     * @return configured map of dmi-plugin name as keys to trust-level for values.
+     */
+    @Bean
+    public IMap<String, TrustLevel> trustLevelPerDmiPlugin() {
+        return createHazelcastInstance("hazelcastInstanceTrustLevelPerDmiPluginMap",
+                trustLevelPerDmiPluginCacheConfig).getMap("trustLevelPerDmiPlugin");
+    }
 
 }