<%@ jet package="cruise.data.impl.dao.session" imports="java.util.* cruise.umple.compiler.AttributeVariable cruise.umple.compiler.UmpleClass cruise.model.abstractObjects.BackingObject;" class="ObjectRepository" skeleton="../skeleton/IGenerator.skeleton" %> <% ArrayList clazzez =(ArrayList)argument; %> package dao.session; import java.util.HashMap; import java.util.Map; public class ObjectRepository { @SuppressWarnings("unchecked") protected ObjectRepository(){ //initialize <% for (Iterator iterClazzez =clazzez.iterator(); iterClazzez.hasNext(); ) { BackingObject clazz= iterClazzez.next(); if(!clazz.hasParent()){ %> map.put(<%=clazz.getPackageName()%>.<%=clazz.getClassName()%>.class, new HashMap()); <% } } %> } @SuppressWarnings("unchecked") private HashMap map= new HashMap(); @SuppressWarnings("unchecked") public HashMap getMap() { return map; } @SuppressWarnings("unchecked") public Map getTable(Class persistenceEntity){ return map.get(persistenceEntity); } @SuppressWarnings("unchecked") public void save(Class persistenceEntity, Object key, Object obj){ if (map.get(persistenceEntity).get(key)!=null) throw new RuntimeException("An entity with the same key field(s) exists!"); map.get(persistenceEntity).put(key, obj); } @SuppressWarnings("unchecked") public void delete(Class persistenceEntity, Object key){ map.get(persistenceEntity).remove(key); } }