public static void rewriteSQL()

in bigquery-antipattern-recognition/src/main/java/com/google/zetasql/toolkit/antipattern/rewriter/gemini/GeminiRewriter.java [45:64]


    public static void rewriteSQL(InputQuery inputQuery,
                                  List<AntiPatternVisitor> visitorsThatFoundAntiPatterns,
                                  AntiPatternHelper antiPatternHelper,
                                  Integer llmRestries,
                                  Boolean llmStrictValidation) throws IOException {

        String queryStr = inputQuery.getQuery();
        QueryVisitorRewriter queryVisitorRewriter = new QueryVisitorRewriter(antiPatternHelper, llmStrictValidation);
        for (AntiPatternVisitor visitor : visitorsThatFoundAntiPatterns) {
            try {
                queryStr = queryVisitorRewriter.rewriteSQL(queryStr, visitor, llmRestries);
            } catch (Exception e) {
                logger.error("Could not rewrite SQL for visitor: " + visitor.getName() + ". Error: " + e.getMessage());
            }
        }
        if (!queryStr.equals(inputQuery.getQuery())) {
            inputQuery.setOptimizedQuery(queryStr);
        }

    }