public void writeRecForQuery()

in bigquery-antipattern-recognition/src/main/java/com/google/zetasql/toolkit/antipattern/output/BQOutputWriter.java [63:86]


  public void writeRecForQuery(
      InputQuery inputQuery,
      List<AntiPatternVisitor> visitorsThatFoundPatterns,
      AntiPatternCommandParser cmdParser) throws IOException {

    List<Map<String, String>> rec_list = new ArrayList<>();
    for (AntiPatternVisitor visitor : visitorsThatFoundPatterns) {
      Map<String, String> rec = new HashMap<>();
      rec.put(REC_NAME_COL_NAME, visitor.getName());
      rec.put(DESCRIPTION_COL_NAME, visitor.getResult());
      rec_list.add(rec);
    }

    Map<String, Object> rowContent = new HashMap<>();
    rowContent.put(JOB_IDENTIFIER_COL_NAME, inputQuery.getQueryId());
    rowContent.put(QUERY_COL_NAME, inputQuery.getQuery());
    rowContent.put(
        SLOT_HOURS_COL_NAME, inputQuery.getSlotHours() >= 0 ? inputQuery.getSlotHours() : null);
    rowContent.put(USER_EMAIL_COL_NAME, inputQuery.getUserEmail());
    rowContent.put(RECOMMENDATION_COL_NAME, rec_list);
    rowContent.put(OPTIMIZED_SQL_COL_NAME, inputQuery.getOptimizedQuery());
    rowContent.put(PROCESS_TIMESTAMP_COL_NAME, date);
    bigQueryHelper.writeResults(processingProjectName, tableName, rowContent);
  }