public static interface LogicalTypeAnnotation.LogicalTypeAnnotationVisitor<T>
Example usage: logicalTypeAnnotation.accept(new LogicalTypeAnnotationVisitor() { ... });
Every visit method returns Optional.empty() by default.
It means that for the given logical type no specific action is needed.
Client code can use Optional.orElse(Object) to return a default value for unhandled types,
or Optional.orElseThrow(Supplier) to throw exception if omitting a type is not allowed.
default Optional<T> visit(LogicalTypeAnnotation.StringLogicalTypeAnnotation stringLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.MapLogicalTypeAnnotation mapLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.ListLogicalTypeAnnotation listLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.EnumLogicalTypeAnnotation enumLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.DecimalLogicalTypeAnnotation decimalLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.DateLogicalTypeAnnotation dateLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.TimeLogicalTypeAnnotation timeLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.TimestampLogicalTypeAnnotation timestampLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.IntLogicalTypeAnnotation intLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.JsonLogicalTypeAnnotation jsonLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.BsonLogicalTypeAnnotation bsonLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.UUIDLogicalTypeAnnotation uuidLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.IntervalLogicalTypeAnnotation intervalLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.MapKeyValueTypeAnnotation mapKeyValueLogicalType)
default Optional<T> visit(LogicalTypeAnnotation.Float16LogicalTypeAnnotation float16LogicalType)
Copyright © 2024 The Apache Software Foundation. All rights reserved.