示例#1
0
 private void validateConfigAgainstExistingDb__wrappee__base(
     DatabaseConfig config, DatabaseImpl databaseImpl) throws DatabaseException {
   if (!config.getUseExistingConfig()) {
     if (databaseImpl.getSortedDuplicates() != config.getSortedDuplicates()) {
       throw new DatabaseException(
           "You can't open a Database with a duplicatesAllowed "
               + "configuration of "
               + config.getSortedDuplicates()
               + " if the underlying database was created with a "
               + "duplicatesAllowedSetting of "
               + databaseImpl.getSortedDuplicates()
               + ".");
     }
   }
   if (databaseImpl.hasOpenHandles()) {
     if (!config.getUseExistingConfig()) {
       if (config.getTransactional() != databaseImpl.isTransactional()) {
         throw new DatabaseException(
             "You can't open a Database with a transactional "
                 + "configuration of "
                 + config.getTransactional()
                 + " if the underlying database was created with a "
                 + "transactional configuration of "
                 + databaseImpl.isTransactional()
                 + ".");
       }
     }
   } else {
     databaseImpl.setTransactional(config.getTransactional());
   }
   if (config.getOverrideBtreeComparator()) {
     databaseImpl.setBtreeComparator(config.getBtreeComparator());
   }
   if (config.getOverrideDuplicateComparator()) {
     databaseImpl.setDuplicateComparator(config.getDuplicateComparator());
   }
 }