package io.trygvis.container.compiler; import io.trygvis.container.compiler.model.TypeRef; import io.trygvis.persistence.EntityMirror; import javax.lang.model.element.Element; import java.util.Collections; import java.util.Map; import java.util.TreeMap; import static java.util.Collections.addAll; public class SqlUnitModel { private Map entities = new TreeMap<>(); private Map elements = new TreeMap<>(); public SqlUnitModel add(EntityMirror... entities) { for (EntityMirror entity : entities) { this.entities.put(entity.type, entity); } return this; } public EntityMirror get(TypeRef type) { EntityMirror entity = entities.get(type); if (entity == null) { throw new InternalErrorException("Could not find entity for " + type.fqName); } return entity; } public Map getEntities() { return entities; } public Element elementForEntity(EntityMirror entity) { return elements.get(entity); } }