1 package org.onap.msb.apiroute.wrapper.queue;
3 import java.util.HashSet;
5 import java.util.concurrent.atomic.AtomicReference;
7 import org.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
11 public class ServiceListCache {
13 private static final Logger LOGGER = LoggerFactory.getLogger(ServiceListCache.class);
15 private final static AtomicReference<Set<String>> serviceNameList4Cache = new AtomicReference<Set<String>>(new HashSet<String>());
17 public static Set<String> getLatestServiceNamelist() {
18 return serviceNameList4Cache.get();
21 public static void setLatestServiceNamelist(Set<String> newServicenamelist){
22 serviceNameList4Cache.set(newServicenamelist);
23 LOGGER.info("------current total Watch Service Num :"+ newServicenamelist.size());
26 public synchronized static void removeService(String serviceName){
28 Set<String> servicenamelist=serviceNameList4Cache.get();
29 servicenamelist.remove(serviceName);
30 serviceNameList4Cache.set(servicenamelist);
31 LOGGER.info("------current total Watch Service Num :"+ servicenamelist.size());