Package org.jdbi.v3.core.mapper
Class JavaTimeMapperFactory
- java.lang.Object
-
- org.jdbi.v3.core.mapper.JavaTimeMapperFactory
-
- All Implemented Interfaces:
ColumnMapperFactory
class JavaTimeMapperFactory extends java.lang.Object implements ColumnMapperFactory
Column mapper factory which knows how to map JavaTime objects:InstantLocalDateLocalTimeLocalDateTimeOffsetDateTimeZonedDateTimeZoneId
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.IdentityHashMap<java.lang.Class<?>,ColumnMapper<?>>mappers
-
Constructor Summary
Constructors Constructor Description JavaTimeMapperFactory()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Optional<ColumnMapper<?>>build(java.lang.reflect.Type type, ConfigRegistry config)Supplies a column mapper which will map columns to type if the factory supports it; empty otherwise.private static java.time.InstantgetInstant(java.sql.ResultSet r, int i)private static java.time.LocalDategetLocalDate(java.sql.ResultSet r, int i)private static java.time.LocalDateTimegetLocalDateTime(java.sql.ResultSet r, int i)private static java.time.LocalTimegetLocalTime(java.sql.ResultSet r, int i)private static java.time.OffsetDateTimegetOffsetDateTime(java.sql.ResultSet r, int i)private static java.time.ZonedDateTimegetZonedDateTime(java.sql.ResultSet r, int i)private static java.time.ZoneIdgetZoneId(java.sql.ResultSet r, int i)
-
-
-
Field Detail
-
mappers
private final java.util.IdentityHashMap<java.lang.Class<?>,ColumnMapper<?>> mappers
-
-
Method Detail
-
build
public java.util.Optional<ColumnMapper<?>> build(java.lang.reflect.Type type, ConfigRegistry config)
Description copied from interface:ColumnMapperFactorySupplies a column mapper which will map columns to type if the factory supports it; empty otherwise.- Specified by:
buildin interfaceColumnMapperFactory- Parameters:
type- the target type to map toconfig- the config registry, for composition- Returns:
- a column mapper for the given type if this factory supports it, or
Optional.empty()otherwise. - See Also:
for composition
-
getInstant
private static java.time.Instant getInstant(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getLocalDate
private static java.time.LocalDate getLocalDate(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getLocalDateTime
private static java.time.LocalDateTime getLocalDateTime(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getOffsetDateTime
private static java.time.OffsetDateTime getOffsetDateTime(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getZonedDateTime
private static java.time.ZonedDateTime getZonedDateTime(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getLocalTime
private static java.time.LocalTime getLocalTime(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getZoneId
private static java.time.ZoneId getZoneId(java.sql.ResultSet r, int i) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
-