All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.query.criteria.internal.expression.DelegatedExpressionImpl Maven / Gradle / Ivy

There is a newer version: 7.0.0.Alpha1
Show newest version
/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or .
 */
package org.hibernate.query.criteria.internal.expression;

import java.util.List;
import javax.persistence.criteria.Selection;

import org.hibernate.query.criteria.internal.ParameterRegistry;
import org.hibernate.query.criteria.internal.ValueHandlerFactory;

/**
 * Implementation of {@link javax.persistence.criteria.Expression} wraps another Expression and delegates most of its
 * functionality to that wrapped Expression
 *
 * @author Steve Ebersole
 */
public abstract class DelegatedExpressionImpl extends ExpressionImpl {
	private final ExpressionImpl wrapped;

	public DelegatedExpressionImpl(ExpressionImpl wrapped) {
		super( wrapped.criteriaBuilder(), wrapped.getJavaType() );
		this.wrapped = wrapped;
	}

	public ExpressionImpl getWrapped() {
		return wrapped;
	}


	// delegations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

	@Override
	public void registerParameters(ParameterRegistry registry) {
		wrapped.registerParameters( registry );
	}

	@Override
	public Selection alias(String alias) {
		wrapped.alias( alias );
		return this;
	}

	@Override
	public boolean isCompoundSelection() {
		return wrapped.isCompoundSelection();
	}

	@Override
	public List getValueHandlers() {
		return wrapped.getValueHandlers();
	}

	@Override
	public List> getCompoundSelectionItems() {
		return wrapped.getCompoundSelectionItems();
	}

	@Override
	public Class getJavaType() {
		return wrapped.getJavaType();
	}

	@Override
	protected void resetJavaType(Class targetType) {
		wrapped.resetJavaType( targetType );
	}

	@Override
	protected void forceConversion(ValueHandlerFactory.ValueHandler tValueHandler) {
		wrapped.forceConversion( tValueHandler );
	}

	@Override
	public ValueHandlerFactory.ValueHandler getValueHandler() {
		return wrapped.getValueHandler();
	}

	@Override
	public String getAlias() {
		return wrapped.getAlias();
	}

	@Override
	protected void setAlias(String alias) {
		wrapped.setAlias( alias );
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy