public void visitLikePredicate()

in google-cloud-spanner-hibernate-dialect/src/main/java/com/google/cloud/spanner/hibernate/SpannerSqlAstTranslator.java [54:81]


  public void visitLikePredicate(LikePredicate likePredicate) {
    // Cloud Spanner does not support ESCAPE clauses.
    if (likePredicate.isCaseSensitive()) {
      likePredicate.getMatchExpression().accept(this);
      if (likePredicate.isNegated()) {
        appendSql(" not");
      }
      appendSql(" like ");
      likePredicate.getPattern().accept(this);
    } else {
      if (getDialect().supportsCaseInsensitiveLike()) {
        likePredicate.getMatchExpression().accept(this);
        if (likePredicate.isNegated()) {
          appendSql(" not");
        }
        appendSql(WHITESPACE);
        appendSql(getDialect().getCaseInsensitiveLike());
        appendSql(WHITESPACE);
        likePredicate.getPattern().accept(this);
      } else {
        renderCaseInsensitiveLikeEmulation(
            likePredicate.getMatchExpression(),
            likePredicate.getPattern(),
            null,
            likePredicate.isNegated());
      }
    }
  }