public abstract class PassThroughLogicalType<T> extends java.lang.Object implements Schema.LogicalType<T,T>
Modifier | Constructor and Description |
---|---|
protected |
PassThroughLogicalType(java.lang.String identifier,
Schema.FieldType argumentType,
java.lang.Object argument,
Schema.FieldType fieldType) |
Modifier and Type | Method and Description |
---|---|
<ArgumentT> |
getArgument()
An optional argument to configure the type.
|
Schema.FieldType |
getArgumentType()
A schema type representing how to interpret the argument.
|
Schema.FieldType |
getBaseType()
The base
Schema.FieldType used to store values of this type. |
java.lang.String |
getIdentifier()
The unique identifier for this type.
|
T |
toBaseType(T input)
Convert the input type to the type Java type used by the base
Schema.FieldType . |
T |
toInputType(T base)
Convert the Java type used by the base
Schema.FieldType to the input type. |
protected PassThroughLogicalType(java.lang.String identifier, Schema.FieldType argumentType, java.lang.Object argument, Schema.FieldType fieldType)
public java.lang.String getIdentifier()
Schema.LogicalType
getIdentifier
in interface Schema.LogicalType<T,T>
public Schema.FieldType getArgumentType()
Schema.LogicalType
null
indicates this logical
type is not parameterized by an argument.getArgumentType
in interface Schema.LogicalType<T,T>
public <ArgumentT> ArgumentT getArgument()
Schema.LogicalType
getArgument
in interface Schema.LogicalType<T,T>
public Schema.FieldType getBaseType()
Schema.LogicalType
Schema.FieldType
used to store values of this type.getBaseType
in interface Schema.LogicalType<T,T>
public T toBaseType(T input)
Schema.LogicalType
Schema.FieldType
.toBaseType
in interface Schema.LogicalType<T,T>
public T toInputType(T base)
Schema.LogicalType
Schema.FieldType
to the input type.toInputType
in interface Schema.LogicalType<T,T>