From: <one...@us...> - 2002-11-19 10:42:20
|
Update of /cvsroot/hibernate/Hibernate/cirrus/hibernate/impl In directory sc8-pr-cvs1:/tmp/cvs-serv22505/cirrus/hibernate/impl Modified Files: SessionFactoryImpl.java Log Message: added polymorphism attribute to <class> element Index: SessionFactoryImpl.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/impl/SessionFactoryImpl.java,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** SessionFactoryImpl.java 6 Nov 2002 00:58:02 -0000 1.58 --- SessionFactoryImpl.java 19 Nov 2002 10:42:17 -0000 1.59 *************** *** 596,605 **** if ( p instanceof Queryable ) { Queryable q = (Queryable) p; ! if ( clazz.equals( q.getMappedClass() ) ) { ! results.add( q.getClassName() ); } ! else if ( clazz.isAssignableFrom( q.getMappedClass() ) ) { ! if ( !q.isInherited() || !clazz.isAssignableFrom( q.getMappedSuperclass() ) ) { ! results.add( q.getClassName() ); } } --- 596,613 ---- if ( p instanceof Queryable ) { Queryable q = (Queryable) p; ! String name = q.getClassName(); ! boolean isMappedClass = clazz.equals( q.getMappedClass() ); ! if ( q.isExplicitPolymorphism() ) { ! if (isMappedClass) return new String[] { name }; } ! else { ! if (isMappedClass) { ! results.add(name); ! } ! else if ( ! clazz.isAssignableFrom( q.getMappedClass() ) && ! ( !q.isInherited() || !clazz.isAssignableFrom( q.getMappedSuperclass() ) ) ! ) { ! results.add(name); } } |