public synchronized void remove ( FieldTable table ) throws DBException { BaseBuffer bufferOld = ( BaseBuffer ) table . getDataSource ( ) ; // same as .getHandle(Constants.DATA_SOURCE_HANDLE); for ( int iKeyArea = Constants . MAIN_KEY_AREA ; iKeyArea < table . getRecord ( ) . getKeyAreaCount ( ) + Constants . MAIN_KEY_AREA ; iKeyArea ++ ) { // Delete the current key. KeyAreaInfo keyArea = table . getRecord ( ) . getKeyArea ( iKeyArea ) ; keyArea . reverseKeyBuffer ( null , Constants . TEMP_KEY_AREA ) ; this . getPKeyArea ( iKeyArea ) . doRemove ( table , table . getRecord ( ) . getKeyArea ( iKeyArea ) , bufferOld ) ; } bufferOld . free ( ) ; // Get rid of the old one table . setDataSource ( null ) ; // same as .doSetHandle(null, Constants.DATA_SOURCE_HANDLE); }
Delete this record .