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.expression;
 
 
Represents a literal expression.

Author(s):
Steve Ebersole
 
 public class LiteralExpression<T> extends ExpressionImpl<T> implements Serializable {
 	private Object literal;
 
 	@SuppressWarnings({ "unchecked" })
 	public LiteralExpression(CriteriaBuilderImpl criteriaBuilder, T literal) {
 		thiscriteriaBuilder, (Class<T>) determineClassliteral ), literal );
 	}
 
 	private static Class determineClass(Object literal) {
 		return literal == null ? null : literal.getClass();
 	}
 
 	public LiteralExpression(CriteriaBuilderImpl criteriaBuilderClass<T> type, T literal) {
 		supercriteriaBuildertype );
 		this. = literal;
 	}
 
 	@SuppressWarnings({ "unchecked" })
 	public T getLiteral() {
 		return (T) ;
 	}
 
 	public void registerParameters(ParameterRegistry registry) {
 		// nothing to do
 	}
 
 	@SuppressWarnings({ "unchecked" })
 	public String render(CriteriaQueryCompiler.RenderingContext renderingContext) {
 		if ( ValueHandlerFactory.isNumeric ) ) {
 			return ValueHandlerFactory.determineAppropriateHandler( (Class.getClass() ).render );
 		}
 
 		// else...
 		final String parameterName = renderingContext.registerLiteralParameterBindinggetLiteral(), getJavaType() );
 		return ':' + parameterName;
 	}
 
 	@SuppressWarnings({ "unchecked" })
 		// some drivers/servers do not like parameters in the select clause
 		final ValueHandlerFactory.ValueHandler handler =
 				ValueHandlerFactory.determineAppropriateHandler.getClass() );
 		if ( ValueHandlerFactory.isCharacter ) ) {
 			return '\'' + handler.render ) + '\'';
 		}
 		else {
 			return handler.render );
 		}
 	}
 
 	@SuppressWarnings({ "unchecked" })
 	protected void resetJavaType(Class targetType) {
 		super.resetJavaTypetargetType );
 		if ( valueHandler == null ) {
 			valueHandler = ValueHandlerFactory.determineAppropriateHandlertargetType );
 			forceConversionvalueHandler );
 		}
 
 		if ( valueHandler != null ) {
 			 = valueHandler.convert );
		}
	}
New to GrepCode? Check out our FAQ X