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");
+ }
}