public void initialize() { identity = context.getMappingSyntaxStrategy().getIdentity(javaClass, context); owners = context.getMappingSyntaxStrategy().getOwningEntities(javaClass, context); persistentProperties = context.getMappingSyntaxStrategy().getPersistentProperties(javaClass, context); persistentPropertyNames = new ArrayList<String>(); associations = new ArrayList(); for (PersistentProperty persistentProperty : persistentProperties) { if (!(persistentProperty instanceof OneToMany)) persistentPropertyNames.add(persistentProperty.getName()); if (persistentProperty instanceof Association) { associations.add((Association) persistentProperty); } } for (PersistentProperty persistentProperty : persistentProperties) { propertiesByName.put(persistentProperty.getName(), persistentProperty); } Class superClass = javaClass.getSuperclass(); if (superClass != null && !superClass.equals(Object.class) && !Modifier.isAbstract(superClass.getModifiers())) { parentEntity = context.addPersistentEntity(superClass); } getMapping().getMappedForm(); // initialize mapping }