class DBConfigFromFile {

  public static DBOptions readFromFile(String dbFileName,
      List<ColumnFamilyDescriptor> cfDescs) throws IOException {
    Preconditions.checkNotNull(dbFileName);
    Preconditions.checkNotNull(cfDescs);
    Preconditions.checkArgument(cfDescs.size() > 0);

    //TODO: Add Documentation on how to support RocksDB Mem Env.
    Env env = Env.getDefault();
    DBOptions options = null;
    File configLocation = getConfigLocation();
    if(configLocation != null &&
        StringUtil.isNotBlank(configLocation.toString())){
      Path optionsFile = Paths.get(configLocation.toString(),
          getOptionsFileNameFromDB(dbFileName));

      if (optionsFile.toFile().exists()) {
        options = new DBOptions();
        try {
          OptionsUtil.loadOptionsFromFile(optionsFile.toString(),
              env, options, cfDescs, true);

        } catch (RocksDBException rdEx) {
          RDBTable.toIOException("Unable to find/open Options file.", rdEx);
        }
      }
    }
    return options;
  }

  private  DBConfigFromFile();

}