package cactusServer.models; import java.util.HashMap; import cactusServer.entities.Instance; /** * インスタンスを管理するクラス * * @author ryo isitani * */ public class Instances { private static Instances theInstance = null; private HashMap<String, Instance> instanceMap = new HashMap<>(); private Instances() { } /** * Instancesクラスを取得する (シングルトン) * * @return */ public static Instances getInstance() { if (theInstance == null) { theInstance = new Instances(); } return theInstance; } /** * 新しいInstanceを作成してMapに追加する * * @param instanceId * Instanceを識別する一意のID * @param name * インスタンス名 (仮) * @return 新しく作成されたInstance */ public Instance createInstance(String instanceId, String name) { Instance instance = new Instance(name); instanceMap.put(instanceId, instance); return instance; } /** * IDに対応するInstanceを取得して返す * * @param instanceId * 取得したいInstanceのID * @return IDに対応するInstance */ public Instance getInstance(String instanceId) { return instanceMap.get(instanceId); } }