Package org.h2.value
Class ExtTypeInfoEnum
- java.lang.Object
-
- org.h2.value.ExtTypeInfo
-
- org.h2.value.ExtTypeInfoEnum
-
- All Implemented Interfaces:
HasSQL
public final class ExtTypeInfoEnum extends ExtTypeInfo
Extended parameters of the ENUM data type.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String[]cleanedprivate java.lang.String[]enumeratorsprivate TypeInfotype-
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
-
Constructor Summary
Constructors Constructor Description ExtTypeInfoEnum(java.lang.String[] enumerators)Creates new instance of extended parameters of the ENUM data type.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)intgetCount()Get count of elements in enumeration.java.lang.StringgetEnumerator(int ordinal)Returns an enumerator with specified 0-based ordinal value.static ExtTypeInfoEnumgetEnumeratorsForBinaryOperation(Value left, Value right)Returns enumerators for the two specified values for a binary operation.java.lang.StringBuildergetSQL(java.lang.StringBuilder builder, int sqlFlags)Appends the SQL statement of this object to the specified builder.(package private) TypeInfogetType()ValueEnumgetValue(int ordinal, CastDataProvider provider)Get ValueEnum instance for an ordinal.ValueEnumgetValue(java.lang.String label, CastDataProvider provider)Get ValueEnum instance for a label string.private ValueEnumgetValueOrNull(java.lang.String label, CastDataProvider provider)inthashCode()private static java.lang.Stringsanitize(java.lang.String label)private static java.lang.StringBuildertoSQL(java.lang.StringBuilder builder, java.lang.String[] enumerators)-
Methods inherited from class org.h2.value.ExtTypeInfo
toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
-
-
-
Field Detail
-
enumerators
private final java.lang.String[] enumerators
-
cleaned
private final java.lang.String[] cleaned
-
type
private TypeInfo type
-
-
Method Detail
-
getEnumeratorsForBinaryOperation
public static ExtTypeInfoEnum getEnumeratorsForBinaryOperation(Value left, Value right)
Returns enumerators for the two specified values for a binary operation.- Parameters:
left- left (first) operandright- right (second) operand- Returns:
- enumerators from the left or the right value, or an empty array if both values do not have enumerators
-
sanitize
private static java.lang.String sanitize(java.lang.String label)
-
toSQL
private static java.lang.StringBuilder toSQL(java.lang.StringBuilder builder, java.lang.String[] enumerators)
-
getType
TypeInfo getType()
-
getCount
public int getCount()
Get count of elements in enumeration.- Returns:
- count of elements in enumeration
-
getEnumerator
public java.lang.String getEnumerator(int ordinal)
Returns an enumerator with specified 0-based ordinal value.- Parameters:
ordinal- ordinal value of an enumerator- Returns:
- the enumerator with specified ordinal value
-
getValue
public ValueEnum getValue(int ordinal, CastDataProvider provider)
Get ValueEnum instance for an ordinal.- Parameters:
ordinal- ordinal value of an enumprovider- the cast information provider- Returns:
- ValueEnum instance
-
getValue
public ValueEnum getValue(java.lang.String label, CastDataProvider provider)
Get ValueEnum instance for a label string.- Parameters:
label- label stringprovider- the cast information provider- Returns:
- ValueEnum instance
-
getValueOrNull
private ValueEnum getValueOrNull(java.lang.String label, CastDataProvider provider)
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
getSQL
public java.lang.StringBuilder getSQL(java.lang.StringBuilder builder, int sqlFlags)Description copied from interface:HasSQLAppends the SQL statement of this object to the specified builder.- Parameters:
builder- string buildersqlFlags- formatting flags- Returns:
- the specified string builder
-
-