void fileClose ( ) throws InternalLogException { if ( tc . isEntryEnabled ( ) ) Tr . entry ( tc , "fileClose" , this ) ; if ( _fileChannel != null ) { try { // Don't close channel as it will free a lock - wait until file close if ( _outstandingWritableLogRecords . get ( ) == 0 && ! _exceptionInForce ) { force ( ) ; // make sure all records really are on disk // Now we know that there are no gaps in the records and none have failed // to be written, byte by byte scanning at the next start can be avoided. _logFileHeader . setCleanShutdown ( ) ; // set the fact that shutdown was clean writeFileHeader ( false ) ; // write clean shutdown into header force ( ) ; } _file . close ( ) ; } catch ( Throwable e ) { FFDCFilter . processException ( e , "com.ibm.ws.recoverylog.spi.LogFileHandle.fileClose" , "541" , this ) ; if ( tc . isEntryEnabled ( ) ) Tr . exit ( tc , "fileClose" , "InternalLogException" ) ; throw new InternalLogException ( e ) ; } _fileBuffer = null ; _file = null ; _fileChannel = null ; } if ( tc . isEntryEnabled ( ) ) Tr . exit ( tc , "fileClose" ) ; }
Close the file managed by this LogFileHandle instance .