Class ObjIdMap<T>
- java.lang.Object
-
- de.bsvrz.puk.config.configFile.fileaccess.ObjIdMap<T>
-
public class ObjIdMap<T> extends java.lang.Object
Map von Objekt-ID zu Typ T. Diese Map entspricht grob einerLinkedHashMap<Long, T>
, unterstützt aber mehrere doppelte Keys. Grund:jemand fragt beispielsweise mit
DataModel.getObjects(long...)
folgendes Array ab:[1,3,1,1,2]
Um für temporäre Operationen eine Map von dieser ID zu z. B. einem Systemobjekt anzulegen, darf die Anfrage nicht in
[1,3,2]
reduziert werden, weil dann der Anfrager falsche Ergebnisse erhält.Daher bietet diese map eine Möglichkeit, die ursprüngliche Reihenfolge und evtl. Doppelungen beizubehalten. Die Methode
put(long, Object)
aktualisiert immer alle Vorkommen einer ID.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long[]
getIds()
Gibt die IDs wieder zurückvoid
put(long id, T value)
ordnet einer ID ein Objekt vom Typ T zu.java.util.List<T>
values()
Gibt die Werte zurück, die den ursprünglichen IDs zugeordnet wurden.
-
-
-
Method Detail
-
put
public void put(long id, T value)
ordnet einer ID ein Objekt vom Typ T zu.- Parameters:
id
- IDvalue
- Wert
-
getIds
public long[] getIds()
Gibt die IDs wieder zurück- Returns:
- IDs
-
values
public java.util.List<T> values()
Gibt die Werte zurück, die den ursprünglichen IDs zugeordnet wurden. Die Anzahl und Reihenfolge entspricht dem ursprünglichen Array, daher können auch Objekte doppelt zurückgegeben werden.- Returns:
- Werte
-
-