class DBAccessorImpl implements DBAccessor {

  @Override
  public List<Integer> getIntColumnValues(String tableName, String columnName, String[] conditionColumnNames,
                                          String[] values, boolean ignoreFailure) throws SQLException {
    return executeQuery(tableName, new String[]{columnName}, conditionColumnNames, values, ignoreFailure,
        new ResultGetter<List<Integer>>() {
          private List<Integer> results = new ArrayList<>();

          @Override
          public void collect(ResultSet resultSet) throws SQLException {
            results.add(resultSet.getInt(1));
          }

          @Override
          public List<Integer> getResult() {
            return results;
          }
        });
  }

  @Inject public  DBAccessorImpl(Configuration configuration);

}