public void makeTables()

in src/main/java/com/google/cloud/solutions/autotokenize/dlp/BatchColumnsForDlp.java [68:94]


    public void makeTables(
        @Element KV<ShardedKey<String>, Iterable<Value>> input,
        OutputReceiver<KV<ShardedKey<String>, Table>> outputReceiver) {

      if (input == null || input.getKey() == null || input.getValue() == null) {
        return;
      }

      var columnName = input.getKey();

      var accumulatedTable = new ColumnTable(columnName);

      for (var value : input.getValue()) {

        if (accumulatedTable.add(value)) {
          continue;
        }

        emitTable(input.getKey(), accumulatedTable.getTable(), outputReceiver);
        accumulatedTable = new ColumnTable(columnName);
        accumulatedTable.add(value);
      }

      if (accumulatedTable.getTable().getRowsCount() > 0) {
        emitTable(input.getKey(), accumulatedTable.getTable(), outputReceiver);
      }
    }