protected void initParams ( Database database , String baseFileName ) { HsqlDatabaseProperties props = database . getProperties ( ) ; fileName = baseFileName + ".data" ; backupFileName = baseFileName + ".backup" ; this . database = database ; fa = database . getFileAccess ( ) ; int cacheScale = props . getIntegerProperty ( HsqlDatabaseProperties . hsqldb_cache_scale , 14 , 8 , 18 ) ; int cacheSizeScale = props . getIntegerProperty ( HsqlDatabaseProperties . hsqldb_cache_size_scale , 10 , 6 , 20 ) ; int cacheFreeCountScale = props . getIntegerProperty ( HsqlDatabaseProperties . hsqldb_cache_free_count_scale , 9 , 6 , 12 ) ; incBackup = database . getProperties ( ) . isPropertyTrue ( HsqlDatabaseProperties . hsqldb_inc_backup ) ; cacheFileScale = database . getProperties ( ) . getIntegerProperty ( HsqlDatabaseProperties . hsqldb_cache_file_scale , 8 ) ; if ( cacheFileScale != 1 ) { cacheFileScale = 8 ; } cachedRowPadding = 8 ; if ( cacheFileScale > 8 ) { cachedRowPadding = cacheFileScale ; } cacheReadonly = database . isFilesReadOnly ( ) ; int lookupTableLength = 1 << cacheScale ; int avgRowBytes = 1 << cacheSizeScale ; maxCacheSize = lookupTableLength * 3 ; maxCacheBytes = maxCacheSize * avgRowBytes ; maxDataFileSize = cacheFileScale == 1 ? Integer . MAX_VALUE : ( long ) Integer . MAX_VALUE * cacheFileScale ; maxFreeBlocks = 1 << cacheFreeCountScale ; dataFile = null ; shadowFile = null ; }
initial external parameters are set here .