X-Git-Url: http://git.osdn.net/view?p=mikutoga%2FVmd2XML.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fjp%2Fsourceforge%2Fmikutoga%2Fvmd%2Fmodel%2FNamedListMap.java;fp=src%2Fmain%2Fjava%2Fjp%2Fsourceforge%2Fmikutoga%2Fvmd%2Fmodel%2FNamedListMap.java;h=0000000000000000000000000000000000000000;hp=01aedfc2871223dfcc6a8b52e509e632f9d212e2;hb=f583159a1358b23ec87c233497608a3fe727d163;hpb=3a327d7c109439afd3f0906028307e0525e32f5c diff --git a/src/main/java/jp/sourceforge/mikutoga/vmd/model/NamedListMap.java b/src/main/java/jp/sourceforge/mikutoga/vmd/model/NamedListMap.java deleted file mode 100644 index 01aedfc..0000000 --- a/src/main/java/jp/sourceforge/mikutoga/vmd/model/NamedListMap.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * string named list map - * - * License : The MIT License - * Copyright(c) 2011 MikuToga Partners - */ - -package jp.sourceforge.mikutoga.vmd.model; - -import java.util.Collections; -import java.util.HashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; - -/** - * 名前付けされたリストのマップ。 - * 登録名の追加順が保持される。 - * @param リスト要素の型 - */ -public class NamedListMap { - - private final List nameList; - private final Map> listMap; - - - /** - * コンストラクタ。 - */ - public NamedListMap(){ - super(); - this.nameList = new LinkedList(); - this.listMap = new HashMap>(); - return; - } - - - /** - * マップをクリアする。 - */ - public void clear(){ - this.nameList.clear(); - this.listMap.clear(); - return; - } - - /** - * マップが空か否か判定する。 - * @return 空ならtrue - */ - public boolean isEmpty(){ - if(this.listMap.isEmpty()) return true; - return false; - } - - /** - * 名前一覧を返す。 - *

名前は登録順に並ぶ。 - *

ここで返されるListへの修正操作は不可能。 - * @return 名前一覧のリスト - */ - public List getNames(){ - List result = Collections.unmodifiableList(this.nameList); - return result; - } - - /** - * 名前付けされたリストを返す。 - * @param name 名前 - * @return 名前付けされたリスト。リストが存在しなければnull。 - */ - public List getNamedList(String name){ - List result = this.listMap.get(name); - return result; - } - - /** - * 名前付けされたリストを削除する。 - * 存在しない名前が渡された場合、何もしない。 - * @param name 名前 - */ - public void removeNamedList(String name){ - if(this.listMap.remove(name) == null) return; - this.nameList.remove(name); - return; - } - - /** - * 名前付けされたリストに新要素を追加する。 - * 未登録の名前であれば新たにリストが作成される。 - * @param name 名前 - * @param elem 新要素 - * @throws NullPointerException 引数がnull - */ - public void addNamedElement(String name, E elem) - throws NullPointerException{ - if(name == null || elem == null) throw new NullPointerException(); - - List list = this.listMap.get(name); - if(list == null){ - list = new LinkedList(); - this.listMap.put(name, list); - this.nameList.add(name); - } - - list.add(elem); - - return; - } - -}