java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java
1.1 --- a/java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java Mon Apr 29 01:27:26 2019 +0200
1.2 +++ b/java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java Tue Apr 30 19:49:17 2019 +0200
1.3 @@ -41,12 +41,21 @@
1.4 private String currentQuery;
1.5 private int currentColumnsCount;
1.6 private int currentRowCount;
1.7 + private int resultSetCount;
1.8
1.9 public AbstractFormatter(FormatterContext formatterContext) {
1.10 this.formatterContext = formatterContext;
1.11 state.push(State.ROOT);
1.12 }
1.13
1.14 + protected String getCurrentRelationName() {
1.15 + if (getFormatterContext().getRelationNames() == null || getFormatterContext().getRelationNames().size() < resultSetCount) {
1.16 + return "r" + resultSetCount;
1.17 + } else {
1.18 + return getFormatterContext().getRelationNames().get(resultSetCount - 1);
1.19 + }
1.20 + }
1.21 +
1.22 /*
1.23 * root
1.24 * .batch
1.25 @@ -126,6 +135,7 @@
1.26 @Override
1.27 public void writeStartBatch() {
1.28 pushState(State.BATCH, EnumSet.of(State.ROOT));
1.29 + resultSetCount = 0;
1.30 }
1.31
1.32 @Override
1.33 @@ -156,6 +166,7 @@
1.34 @Override
1.35 public void writeStartResultSet(ColumnsHeader header) {
1.36 pushState(State.RESULT_SET, EnumSet.of(State.STATEMENT));
1.37 + resultSetCount++;
1.38 currentRowCount = 0;
1.39 currentColumnsHeader = header;
1.40 }