From: <one...@us...> - 2003-01-27 12:39:37
|
Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/cfg In directory sc8-pr-cvs1:/tmp/cvs-serv2119/sf/hibernate/cfg Modified Files: Binder.java Mappings.java Log Message: minor cleanups Index: Binder.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/cfg/Binder.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Binder.java 27 Jan 2003 12:12:40 -0000 1.2 --- Binder.java 27 Jan 2003 12:39:34 -0000 1.3 *************** *** 194,233 **** String propertyName = Property.getPropertyName(subnode); ! if ( "id".equals(name) ) { if (propertyName==null) { ! model.setIdentifier( new Value(table) ); ! bindValue(subnode, model.getIdentifier(), false, RootClass.DEFAULT_IDENTIFIER_COLUMN_NAME); ! if (model.getIdentifier().getType()==null) throw new MappingException( "must specify an identifier type: " + model.getPersistentClass().getName() ); model.setIdentifierProperty(null); } else { ! model.setIdentifier( new Value(table) ); ! bindValue(subnode, model.getIdentifier(), false, propertyName); ! model.getIdentifier().setTypeByReflection( model.getPersistentClass(), propertyName ); Property prop = new Property(); ! bindProperty(subnode, prop, model.getIdentifier(), mappings); model.setIdentifierProperty(prop); } ! if ( model.getIdentifier().getType().getReturnedClass().isArray() ) throw new MappingException( "illegal use of an array as an identifier (arrays don't reimplement equals)" ); ! makeIdentifier( subnode, model.getIdentifier() ); } ! else if ( "composite-id".equals(name) ) { if (propertyName==null) { ! model.setIdentifier( new Component(model) ); ! bindComponent(subnode, (Component) model.getIdentifier(), null, null, false, mappings); ! model.setEmbeddedIdentifier( ( (Component) model.getIdentifier() ).isEmbedded() ); model.setIdentifierProperty(null); } else { Class reflectedClass = ReflectHelper.getGetter( model.getPersistentClass(), propertyName ).getReturnType(); ! model.setIdentifier( new Component(model) ); ! bindComponent(subnode, (Component) model.getIdentifier(), reflectedClass, null, false, mappings); Property prop = new Property(); ! bindProperty(subnode, prop, model.getIdentifier(), mappings); model.setIdentifierProperty(prop); } ! makeIdentifier( subnode, model.getIdentifier() ); } else if ( "version".equals(name) || "timestamp".equals(name) ) { --- 194,233 ---- String propertyName = Property.getPropertyName(subnode); ! if ( "id".equals(name) ) { ! Value id = new Value(table); ! model.setIdentifier(id); if (propertyName==null) { ! bindValue(subnode, id, false, RootClass.DEFAULT_IDENTIFIER_COLUMN_NAME); ! if (id.getType()==null) throw new MappingException( "must specify an identifier type: " + model.getPersistentClass().getName() ); model.setIdentifierProperty(null); } else { ! bindValue(subnode, id, false, propertyName); ! id.setTypeByReflection( model.getPersistentClass(), propertyName ); Property prop = new Property(); ! bindProperty(subnode, prop, id, mappings); model.setIdentifierProperty(prop); } ! if ( id.getType().getReturnedClass().isArray() ) throw new MappingException( "illegal use of an array as an identifier (arrays don't reimplement equals)" ); ! makeIdentifier(subnode, id); } ! else if ( "composite-id".equals(name) ) { ! Component id = new Component(model); ! model.setIdentifier(id); if (propertyName==null) { ! bindComponent(subnode, id, null, null, false, mappings); ! model.setEmbeddedIdentifier( id.isEmbedded() ); model.setIdentifierProperty(null); } else { Class reflectedClass = ReflectHelper.getGetter( model.getPersistentClass(), propertyName ).getReturnType(); ! bindComponent(subnode, id, reflectedClass, null, false, mappings); Property prop = new Property(); ! bindProperty(subnode, prop, id, mappings); model.setIdentifierProperty(prop); } ! makeIdentifier(subnode, id); } else if ( "version".equals(name) || "timestamp".equals(name) ) { *************** *** 242,251 **** } else if ( "discriminator".equals(name) ) { ! //DISCRIMINATOR ! model.setDiscriminator( new Value(table) ); ! bindValue(subnode, model.getDiscriminator(), false, RootClass.DEFAULT_DISCRIMINATOR_COLUMN_NAME); ! if ( model.getDiscriminator().getType()==null ) { ! model.getDiscriminator().setType(Hibernate.STRING); ! ( (Column) model.getDiscriminator().getColumnIterator().next() ).setType(Hibernate.STRING); } model.setPolymorphic(true); --- 242,252 ---- } else if ( "discriminator".equals(name) ) { ! //DISCRIMINATOR ! Value discrim = new Value(table); ! model.setDiscriminator(discrim); ! bindValue(subnode, discrim, false, RootClass.DEFAULT_DISCRIMINATOR_COLUMN_NAME); ! if ( discrim.getType()==null ) { ! discrim.setType(Hibernate.STRING); ! ( (Column) discrim.getColumnIterator().next() ).setType(Hibernate.STRING); } model.setPolymorphic(true); Index: Mappings.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/cfg/Mappings.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Mappings.java 27 Jan 2003 12:12:40 -0000 1.1 --- Mappings.java 27 Jan 2003 12:39:34 -0000 1.2 *************** *** 23,27 **** * A collection of mappings from classes and collections to * relational database tables. (Represents a single ! * <tt><hibernate-mapping><tt> element.) */ public class Mappings { --- 23,27 ---- * A collection of mappings from classes and collections to * relational database tables. (Represents a single ! * <tt><hibernate-mapping></tt> element.) */ public class Mappings { |