private ReferenceDescriptorDef cloneReference ( ReferenceDescriptorDef refDef , String prefix ) { ReferenceDescriptorDef copyRefDef = new ReferenceDescriptorDef ( refDef , prefix ) ; copyRefDef . setOwner ( this ) ; // we remove properties that are only relevant to the class the features are declared in copyRefDef . setProperty ( PropertyHelper . OJB_PROPERTY_IGNORE , null ) ; Properties mod = getModification ( copyRefDef . getName ( ) ) ; if ( mod != null ) { if ( ! PropertyHelper . toBoolean ( mod . getProperty ( PropertyHelper . OJB_PROPERTY_IGNORE ) , false ) && hasFeature ( copyRefDef . getName ( ) ) ) { LogHelper . warn ( true , ClassDescriptorDef . class , "process" , "Class " + getName ( ) + " has a feature that has the same name as its included reference " + copyRefDef . getName ( ) + " from class " + refDef . getOwner ( ) . getName ( ) ) ; } copyRefDef . applyModifications ( mod ) ; } return copyRefDef ; }
Clones the given reference .