|
From: <one...@us...> - 2002-11-24 15:46:23
|
Update of /cvsroot/hibernate/Hibernate/cirrus/hibernate/persister
In directory sc8-pr-cvs1:/tmp/cvs-serv4213/cirrus/hibernate/persister
Modified Files:
EntityPersister.java MultiTableEntityPersister.java
Log Message:
property of component type may now appear in select clause
Index: EntityPersister.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/persister/EntityPersister.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -C2 -d -r1.38 -r1.39
*** EntityPersister.java 5 Nov 2002 11:48:08 -0000 1.38
--- EntityPersister.java 24 Nov 2002 15:45:50 -0000 1.39
***************
*** 926,947 ****
}
}
else {
! Iterator iter = prop.getColumnIterator();
! String[] names = new String[ prop.getColumnSpan() ];
! int k=0;
! while ( iter.hasNext() ) {
! names[k] = ( (Column) iter.next() ).getName();
! k++;
! }
!
! Type type = prop.getType();
! typesByPropertyPath.put(path, type);
! if ( type.isEntityType() && ( (EntityType) type ).isOneToOne() ) {
! columnNamesByPropertyPath.put( path, getIdentifierColumnNames() );
! }
! else {
! columnNamesByPropertyPath.put(path, names);
! }
!
}
--- 926,945 ----
}
}
+
+ Iterator iter = prop.getColumnIterator();
+ String[] names = new String[ prop.getColumnSpan() ];
+ int k=0;
+ while ( iter.hasNext() ) {
+ names[k] = ( (Column) iter.next() ).getName();
+ k++;
+ }
+
+ Type type = prop.getType();
+ typesByPropertyPath.put(path, type);
+ if ( type.isEntityType() && ( (EntityType) type ).isOneToOne() ) {
+ columnNamesByPropertyPath.put( path, getIdentifierColumnNames() );
+ }
else {
! columnNamesByPropertyPath.put(path, names);
}
***************
*** 1002,1008 ****
String[] cols = getPropertyColumnNames(property);
! if (cols==null) throw new QueryException(
! "unresolved property: " + property + " (possibly need to dereference a component)"
! );
if (cols.length==0) {
--- 1000,1004 ----
String[] cols = getPropertyColumnNames(property);
! if (cols==null) throw new QueryException("unresolved property: " + property);
if (cols.length==0) {
Index: MultiTableEntityPersister.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/persister/MultiTableEntityPersister.java,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** MultiTableEntityPersister.java 22 Nov 2002 00:27:09 -0000 1.33
--- MultiTableEntityPersister.java 24 Nov 2002 15:45:50 -0000 1.34
***************
*** 1135,1163 ****
}
}
else {
! Iterator iter = prop.getColumnIterator();
! String[] names = new String[ prop.getColumnSpan() ];
! int k=0;
! while ( iter.hasNext() ) {
! names[k] = ( (Column) iter.next() ).getName();
! k++;
! }
!
! tableNumberByPropertyPath.put(
! path,
! new Integer( getTableId(
! prop.getValue().getTable().getQualifiedName( factory.getDefaultSchema() ),
! subclassTableNameClosure
! ) )
! );
!
! Type type = prop.getType();
! typesByPropertyPath.put(path, type);
! if ( type.isEntityType() && ( (EntityType) type ).isOneToOne() ) {
! columnNamesByPropertyPath.put( path, getIdentifierColumnNames() );
! }
! else {
! columnNamesByPropertyPath.put(path, names);
! }
}
--- 1135,1162 ----
}
}
+
+ Iterator iter = prop.getColumnIterator();
+ String[] names = new String[ prop.getColumnSpan() ];
+ int k=0;
+ while ( iter.hasNext() ) {
+ names[k] = ( (Column) iter.next() ).getName();
+ k++;
+ }
+
+ tableNumberByPropertyPath.put(
+ path,
+ new Integer( getTableId(
+ prop.getValue().getTable().getQualifiedName( factory.getDefaultSchema() ),
+ subclassTableNameClosure
+ ) )
+ );
+
+ Type type = prop.getType();
+ typesByPropertyPath.put(path, type);
+ if ( type.isEntityType() && ( (EntityType) type ).isOneToOne() ) {
+ columnNamesByPropertyPath.put( path, getIdentifierColumnNames() );
+ }
else {
! columnNamesByPropertyPath.put(path, names);
}
***************
*** 1243,1249 ****
String[] cols = getPropertyColumnNames(property);
! if (cols==null) throw new QueryException(
! "unresolved property: " + property + " (possibly you need to dereference a component)"
! );
if (cols.length==0) {
--- 1242,1246 ----
String[] cols = getPropertyColumnNames(property);
! if (cols==null) throw new QueryException("unresolved property: " + property);
if (cols.length==0) {
|