package com.taover.heartbeat; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.taover.heartbeat.bean.ServerInstance; public class ServerHolderImpl implements ServerHolder { Map serverMap = new HashMap(); @Override public List getServerInstanceList() { return new ArrayList(serverMap.values()); } @Override public void registeServer(String code, String url, int fixRateSec, int maxWaitSec) throws Exception { ServerInstance server = new ServerInstance(code, url, fixRateSec, maxWaitSec); synchronized (this.serverMap) { if(serverMap.containsKey(server.getIdentity())) { server = serverMap.get(server.getIdentity()); }else { serverMap.put(server.getIdentity(), server); } } server.flush(); } @Override public void flushServerStatus(ServerInstance serverInstance) { serverInstance.flush(); } }