Package io.debezium.time
Class NanoTime
java.lang.Object
io.debezium.time.NanoTime
A utility for converting various Java time representations into the
INT64 number of
nanoseconds since midnight, and for defining a Kafka Connect Schema for time values with no date or timezone
information.- Author:
- Randall Hauch
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic org.apache.kafka.connect.data.SchemaBuilderbuilder()Returns aSchemaBuilderfor aNanoTime.static org.apache.kafka.connect.data.Schemaschema()Returns a Schema for aNanoTimebut with all other default Schema settings.static longtoNanoOfDay(Object value, boolean acceptLargeValues) Get the number of nanoseconds past midnight of the givenDuration.
-
Field Details
-
SCHEMA_NAME
- See Also:
-
ONE_DAY
-
-
Constructor Details
-
NanoTime
private NanoTime()
-
-
Method Details
-
builder
public static org.apache.kafka.connect.data.SchemaBuilder builder()Returns aSchemaBuilderfor aNanoTime. The resulting schema will describe a field with the "io.debezium.time.NanoTime" as thenameandINT64for the literal type storing the number of nanoseconds past midnight.You can use the resulting SchemaBuilder to set or override additional schema settings such as required/optional, default value, and documentation.
- Returns:
- the schema builder
-
schema
public static org.apache.kafka.connect.data.Schema schema()Returns a Schema for aNanoTimebut with all other default Schema settings. The schema describes a field with the "io.debezium.time.NanoTime" as thenameandINT64for the literal type storing the number of nanoseconds past midnight.- Returns:
- the schema
- See Also:
-
toNanoOfDay
Get the number of nanoseconds past midnight of the givenDuration.- Parameters:
value- the duration value; may not be nullacceptLargeValues- whether to accept values less than 00:00:00 and larger than 24:00:00 or not- Returns:
- the milliseconds past midnight
- Throws:
IllegalArgumentException- if the value is not an instance of the acceptable types or it is out of the supported range
-