Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Hibernate, Relational Persistence for Idiomatic Java
   *
   * Copyright (c) 2009 by Red Hat Inc and/or its affiliates or by
   * third-party contributors as indicated by either @author tags or express
   * copyright attribution statements applied by the authors.  All
   * third-party contributions are distributed under license by Red Hat Inc.
   *
   * This copyrighted material is made available to anyone wishing to use, modify,
  * copy, or redistribute it subject to the terms and conditions of the GNU
  * Lesser General Public License, as published by the Free Software Foundation.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
  * for more details.
  *
  * You should have received a copy of the GNU Lesser General Public License
  * along with this distribution; if not, write to:
  * Free Software Foundation, Inc.
  * 51 Franklin Street, Fifth Floor
  * Boston, MA  02110-1301  USA
  */
 package org.hibernate.ejb.criteria.predicate;
 
 
Models a SQL LIKE expression.

Author(s):
Steve Ebersole
 
 public class LikePredicate extends AbstractSimplePredicate implements Serializable {
 	private final Expression<StringmatchExpression;
 	private final Expression<Stringpattern;
 	private final Expression<CharacterescapeCharacter;
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			Expression<Stringpattern) {
 		thiscriteriaBuildermatchExpressionpatternnull );
 	}
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			String pattern) {
 		thiscriteriaBuildermatchExpressionnew LiteralExpression<String>( criteriaBuilderpattern) );
 	}
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			Expression<Stringpattern,
 			Expression<CharacterescapeCharacter) {
 		supercriteriaBuilder );
 		this. = matchExpression;
 		this. = pattern;
 		this. = escapeCharacter;
 	}
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			Expression<Stringpattern,
 			char escapeCharacter) {
 		this(
 				criteriaBuilder,
 				matchExpression,
 				pattern,
 				new LiteralExpression<Character>( criteriaBuilderescapeCharacter )
 		);
 	}
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			String pattern,
 			char escapeCharacter) {
 		this(
 				criteriaBuilder,
 				matchExpression,
 				new LiteralExpression<String>( criteriaBuilderpattern ),
 				new LiteralExpression<Character>( criteriaBuilderescapeCharacter )
 		);
 	}
 
 	public LikePredicate(
 			CriteriaBuilderImpl criteriaBuilder,
 			Expression<StringmatchExpression,
 			String pattern,
			Expression<CharacterescapeCharacter) {
		this(
				criteriaBuilder,
				matchExpression,
				new LiteralExpression<String>( criteriaBuilderpattern ),
				escapeCharacter
		);
	}
	}
	}
		return ;
	}
	public void registerParameters(ParameterRegistry registry) {
		Helper.possibleParametergetEscapeCharacter(), registry );
		Helper.possibleParametergetMatchExpression(), registry );
		Helper.possibleParametergetPattern(), registry );
	}
	public String render(CriteriaQueryCompiler.RenderingContext renderingContext) {
		final String operator = isNegated() ? " not like " : " like ";
		StringBuilder buffer = new StringBuilder();
		buffer.append( ( (RenderablegetMatchExpression() ).renderrenderingContext ) )
				.appendoperator )
				.append( ( (RenderablegetPattern() ).renderrenderingContext ) );
		if (  != null ) {
			buffer.append" escape " )
					.append( ( (RenderablegetEscapeCharacter() ).renderrenderingContext ) );
		}
		return buffer.toString();
	}
		return renderrenderingContext );
	}
New to GrepCode? Check out our FAQ X