List of usage examples for org.hibernate.mapping RootClass setClassName
public void setClassName(String className)
From source file:com.manydesigns.portofino.persistence.hibernate.HibernateConfig.java
License:Open Source License
protected RootClass createTableMapping(Mappings mappings, com.manydesigns.portofino.model.database.Table aTable) { Table tab = mappings.addTable(escapeName(aTable.getSchemaName()), null, escapeName(aTable.getTableName()), null, false);//from w ww.j a va 2 s . c o m //tab.setName(escapeName(aTable.getTableName())); //tab.setSchema(escapeName(aTable.getSchemaName())); mappings.addTableBinding(aTable.getSchemaName(), null, aTable.getTableName(), aTable.getTableName(), null); RootClass clazz = new RootClass(); clazz.setEntityName(aTable.getActualEntityName()); clazz.setJpaEntityName(aTable.getActualEntityName()); if (aTable.getJavaClass() != null) { clazz.setClassName(aTable.getJavaClass()); clazz.setProxyInterfaceName(aTable.getJavaClass()); } clazz.setLazy(LAZY); clazz.setTable(tab); //clazz.setNodeName(aTable.getTableName()); List<com.manydesigns.portofino.model.database.Column> columnList = new ArrayList<com.manydesigns.portofino.model.database.Column>(); for (com.manydesigns.portofino.model.database.Column modelColumn : aTable.getColumns()) { int jdbcType = modelColumn.getJdbcType(); Class javaType = modelColumn.getActualJavaType(); //First param = null ==> doesn't really set anything, just check boolean hibernateTypeOk = setHibernateType(null, modelColumn, javaType, jdbcType); if (hibernateTypeOk) { columnList.add(modelColumn); } else { logger.error( "Cannot find Hibernate type for table: {}, column: {}, jdbc type: {}, type name: {}. Skipping column.", new Object[] { aTable.getQualifiedName(), modelColumn.getColumnName(), jdbcType, javaType != null ? javaType.getName() : null }); } } //Primary keys List<com.manydesigns.portofino.model.database.Column> columnPKList = aTable.getPrimaryKey().getColumns(); if (!columnList.containsAll(columnPKList)) { logger.error("Primary key refers to some invalid columns, skipping table {}", aTable.getQualifiedName()); return null; } if (columnPKList.size() > 1) { createPKComposite(mappings, aTable, aTable.getPrimaryKey().getPrimaryKeyName(), clazz, tab, columnPKList); } else { createPKSingle(mappings, aTable, aTable.getPrimaryKey().getPrimaryKeyName(), clazz, tab, columnPKList); } //Other columns columnList.removeAll(columnPKList); for (com.manydesigns.portofino.model.database.Column column : columnList) { Column col = createColumn(mappings, tab, column); if (col != null) { clazz.addProperty(createProperty(column, col.getValue())); } } return clazz; }