code: List<SqlStatement> linesToStatements(List<String> lines)
      {
          final List<SqlStatement> statements = Lists.newArrayList();
          final StringBuilder statementSql = new StringBuilder();
          int count = 0;
  
          String delimiter = DEFAULT_STATEMENT_DELIMITER;
  
          for (final String line : lines)
          {
              if (StringUtils.isBlank(line)) {
                  continue;
              }
  
              if (statementSql.length() > 0) {
                  statementSql.append(" ");
              }
              statementSql.append(line);
  
              final String oldDelimiter = delimiter;
              delimiter = changeDelimiterIfNecessary(statementSql.toString(), line, delimiter);
              if (!StringUtils.equals(delimiter, oldDelimiter) && isDelimiterChangeExplicit()) {
                  statementSql.setLength(0);
                  continue; // for
              }
  
              if (StringUtils.endsWith(line, delimiter)) {
                  // Trim off the delimiter at the end.
                  statementSql.setLength(statementSql.length() - delimiter.length());
                  statements.add(new SqlStatement(count++, StringUtils.trimToEmpty(statementSql.toString())));
                  LOG.debug("Found statement: {}", statementSql);
  
                  if (!isDelimiterChangeExplicit()) {
                      delimiter = DEFAULT_STATEMENT_DELIMITER;
                  }
                  statementSql.setLength(0);
              }
          }
  
          // Catch any statements not followed by delimiter.
          if (statementSql.length() > 0) {
              statements.add(new SqlStatement(count++, StringUtils.trimToEmpty(statementSql.toString())));
          }
  
          return statements;
      }
docs: Turns these lines in a series of statements.