Top Description Fields Constructors Methods
org.hibernate.query.sqm.tree.expression

public Class SqmEnumLiteral<E extends java.lang.Enum<E>>

extends SqmLiteral<E extends Enum<E>>
implements SqmExpressible<E extends Enum<E>>, SemanticPathPart
Class Inheritance
All Implemented Interfaces
org.hibernate.query.hql.spi.SemanticPathPart, org.hibernate.query.sqm.SqmExpressible, org.hibernate.query.BindableType
Imports
java.math.BigDecimal, .BigInteger, java.util.Locale, org.hibernate.metamodel.model.domain.DomainType, org.hibernate.query.hql.spi.SemanticPathPart, .SqmCreationState, org.hibernate.query.sqm.NodeBuilder, .SemanticQueryWalker, .SqmExpressible, .UnknownPathException, org.hibernate.query.sqm.tree.SqmCopyContext, org.hibernate.query.sqm.tree.domain.SqmPath, org.hibernate.type.descriptor.java.EnumJavaType

Specialized SQM literal defined by an enum reference. E.g. ".. where p.sex = Sex.MALE"
Author
Steve Ebersole

Field Summary

Modifier and TypeField and Description
private final E
private final String
private final EnumJavaType<E>

Constructor Summary

AccessConstructor and Description
public
SqmEnumLiteral(E enumValue, EnumJavaType<E> referencedEnumTypeDescriptor, String enumValueName, NodeBuilder nodeBuilder)

Method Summary

Modifier and TypeMethod and Description
public <X> X
public void
public SqmExpression<BigDecimal>
public SqmExpression<BigInteger>
public SqmExpression<Double>
public SqmExpression<Float>
public SqmExpression<Integer>
public SqmExpression<Long>
public SqmExpression<String>
public SqmEnumLiteral<E>
public Class<E>
public E
public SqmExpressible<E>
public EnumJavaType<E>
getExpressibleJavaType()

Implements org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

The Java type descriptor for this expressible
public DomainType<E>
public SqmPath<?>
public SemanticPathPart
Inherited from org.hibernate.query.sqm.tree.expression.SqmLiteral:
appendHqlStringasLoggableTextgetLiteralValue

Field Detail

enumValueback to summary
private final E enumValue
enumValueNameback to summary
private final String enumValueName
referencedEnumTypeDescriptorback to summary
private final EnumJavaType<E> referencedEnumTypeDescriptor

Constructor Detail

SqmEnumLiteralback to summary
public SqmEnumLiteral(E enumValue, EnumJavaType<E> referencedEnumTypeDescriptor, String enumValueName, NodeBuilder nodeBuilder)

Method Detail

acceptback to summary
public <X> X accept(SemanticQueryWalker<X> walker)

Overrides org.hibernate.query.sqm.tree.expression.SqmLiteral.accept.

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Doc from org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Accept the walker per visitation

Annotations
@Override
appendHqlStringback to summary
public void appendHqlString(StringBuilder sb)

Overrides org.hibernate.query.sqm.tree.expression.SqmLiteral.appendHqlString.

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.appendHqlString.

Annotations
@Override
asBigDecimalback to summary
public SqmExpression<BigDecimal> asBigDecimal()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asBigDecimal.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asBigDecimal.

Annotations
@Override
asBigIntegerback to summary
public SqmExpression<BigInteger> asBigInteger()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asBigInteger.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asBigInteger.

Annotations
@Override
asDoubleback to summary
public SqmExpression<Double> asDouble()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asDouble.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asDouble.

Annotations
@Override
asFloatback to summary
public SqmExpression<Float> asFloat()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asFloat.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asFloat.

Annotations
@Override
asIntegerback to summary
public SqmExpression<Integer> asInteger()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asInteger.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asInteger.

Annotations
@Override
asLongback to summary
public SqmExpression<Long> asLong()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asLong.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asLong.

Annotations
@Override
asStringback to summary
public SqmExpression<String> asString()

Overrides org.hibernate.query.sqm.tree.expression.AbstractSqmExpression.asString.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.asString.

Annotations
@Override
copyback to summary
public SqmEnumLiteral<E> copy(SqmCopyContext context)

Overrides org.hibernate.query.sqm.tree.expression.SqmLiteral.copy.

Implements org.hibernate.query.sqm.tree.expression.SqmExpression.copy, org.hibernate.query.sqm.tree.select.SqmSelectableNode.copy, org.hibernate.query.sqm.tree.SqmNode.copy.

Annotations
@Override
getBindableJavaTypeback to summary
public Class<E> getBindableJavaType()

Implements org.hibernate.query.BindableType.getBindableJavaType.

Doc from org.hibernate.query.BindableType.getBindableJavaType.

The expected Java type

Annotations
@Override
getEnumValueback to summary
public E getEnumValue()
getExpressibleback to summary
public SqmExpressible<E> getExpressible()

Overrides default org.hibernate.query.sqm.tree.SqmTypedNode.getExpressible.

Annotations
@Override
getExpressibleJavaTypeback to summary
public EnumJavaType<E> getExpressibleJavaType()

Implements org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

Doc from org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

The Java type descriptor for this expressible

Annotations
@Override
getSqmTypeback to summary
public DomainType<E> getSqmType()

Implements org.hibernate.query.sqm.SqmExpressible.getSqmType.

Annotations
@Override
resolveIndexedAccessback to summary
public SqmPath<?> resolveIndexedAccess(SqmExpression<?> selector, boolean isTerminal, SqmCreationState creationState)

Implements org.hibernate.query.hql.spi.SemanticPathPart.resolveIndexedAccess.

Annotations
@Override
resolvePathPartback to summary
public SemanticPathPart resolvePathPart(String name, boolean isTerminal, SqmCreationState creationState)

Implements org.hibernate.query.hql.spi.SemanticPathPart.resolvePathPart.

Annotations
@Override