package foundation.capacity; import java.util.HashMap; import java.util.Map; public class CurrentActor { private ActorTarget defaultActor; private Map onlineActors; public CurrentActor() { onlineActors = new HashMap(); } public ActorTarget get(String onlineCode) { //1. if (onlineCode == null) { return defaultActor; } //2. synchronized (onlineActors) { ActorTarget result = onlineActors.get(onlineCode); if (result == null) { result = defaultActor; } return result; } } public void set(String onlineCode, ActorTarget result) { //1. if (onlineCode == null) { return; } //2. defaultActor = result; } public ActorTarget getDefault() { return defaultActor; } public void setDefault(ActorTarget actor) { this.defaultActor = actor; } public boolean isEmptyDefault() { return defaultActor == null; } }