Add withTrustLevel condition to CmHandle Query API
[cps.git] / cps-ncmp-service / src / main / java / org / onap / cps / ncmp / api / impl / config / embeddedcache / TrustLevelCacheConfig.java
index 816fc50..171db52 100644 (file)
 
 package org.onap.cps.ncmp.api.impl.config.embeddedcache;
 
-import com.hazelcast.collection.ISet;
-import com.hazelcast.config.SetConfig;
+import com.hazelcast.config.MapConfig;
+import java.util.Map;
 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 MapConfig trustLevelPerCmHandleCacheConfig =
+            createMapConfig("trustLevelPerCmHandleCacheConfig");
+
+    private static final MapConfig trustLevelPerDmiPluginCacheConfig =
+            createMapConfig("trustLevelPerDmiPluginCacheConfig");
 
     /**
-     * Untrustworthy cmhandle set instance.
+     * Distributed instance of trust level cache containing the trust level per cm handle.
      *
-     * @return instance of distributed set of untrustworthy cmhandles.
+     * @return configured map of cm handle name as keys to trust-level for values.
      */
     @Bean
-    public ISet<String> untrustworthyCmHandlesSet() {
-        return createHazelcastInstance("untrustworthyCmHandlesSet", untrustworthyCmHandlesSetConfig).getSet(
-                "untrustworthyCmHandlesSet");
+    public Map<String, TrustLevel> trustLevelPerCmHandle() {
+        return createHazelcastInstance("hazelcastInstanceTrustLevelPerCmHandleMap",
+                trustLevelPerCmHandleCacheConfig).getMap("trustLevelPerCmHandle");
     }
 
+    /**
+     * 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 Map<String, TrustLevel> trustLevelPerDmiPlugin() {
+        return createHazelcastInstance("hazelcastInstanceTrustLevelPerDmiPluginMap",
+                trustLevelPerDmiPluginCacheConfig).getMap("trustLevelPerDmiPlugin");
+    }
 
 }