package database; import java.util.HashMap; import java.util.Map; import org.mapdb.DB; import qora.naming.Name; import database.DBSet; import database.serializer.NameSerializer; public class NameMap extends DBMap<String, Name> { private Map<Integer, Integer> observableData = new HashMap<Integer, Integer>(); public NameMap(DBSet databaseSet, DB database) { super(databaseSet, database); } public NameMap(NameMap parent) { super(parent); } protected void createIndexes(DB database){} @Override protected Map<String, Name> getMap(DB database) { //OPEN MAP return database.createTreeMap("names") .valueSerializer(new NameSerializer()) .makeOrGet(); } @Override protected Map<String, Name> getMemoryMap() { return new HashMap<String, Name>(); } @Override protected Name getDefaultValue() { return null; } @Override protected Map<Integer, Integer> getObservableData() { return this.observableData; } public boolean contains(Name name) { return this.contains(name.getName()); } public void add(Name name) { this.set(name.getName(), name); } public void delete(Name name) { this.delete(name.getName()); } }