/**
* Returns the object referenced by the specified property (which represents an association).
*/
private Object getReferencedEntity(int propertyIndex) {
GridType propertyType = persister.getGridPropertyTypes()[propertyIndex];
Serializable id = (Serializable) propertyType.hydrate(
resultset, persister.getPropertyColumnNames( propertyIndex ), session, null
);
if ( id != null ) {
EntityPersister hostingEntityPersister = session.getFactory().getEntityPersister(
propertyType.getReturnedClass().getName()
);
return session.getPersistenceContext().getEntity(
session.generateEntityKey( id, hostingEntityPersister )
);