protected ClassDescriptor selectClassDescriptor ( Map row ) throws PersistenceBrokerException { ClassDescriptor result = m_cld ; Class ojbConcreteClass = ( Class ) row . get ( OJB_CONCRETE_CLASS_KEY ) ; if ( ojbConcreteClass != null ) { result = m_cld . getRepository ( ) . getDescriptorFor ( ojbConcreteClass ) ; // if we can't find class-descriptor for concrete class, something wrong with mapping if ( result == null ) { throw new PersistenceBrokerException ( "Can't find class-descriptor for ojbConcreteClass '" + ojbConcreteClass + "', the main class was " + m_cld . getClassNameOfObject ( ) ) ; } } return result ; }
Check if there is an attribute which tells us which concrete class is to be instantiated .