Package org.jdbi.v3.core.mapper
Class EnumMapper.EnumByNameColumnMapper<E extends java.lang.Enum<E>>
- java.lang.Object
-
- org.jdbi.v3.core.mapper.EnumMapper.EnumByNameColumnMapper<E>
-
- All Implemented Interfaces:
ColumnMapper<E>
- Enclosing class:
- EnumMapper<E extends java.lang.Enum<E>>
static class EnumMapper.EnumByNameColumnMapper<E extends java.lang.Enum<E>> extends java.lang.Object implements ColumnMapper<E>
-
-
Field Summary
Fields Modifier and Type Field Description private static ConfigCache<java.lang.Class<? extends java.lang.Enum<?>>,ConfigCache<java.lang.String,java.lang.Enum<?>>>BY_NAME_CACHEprivate java.lang.Class<E>enumClass
-
Constructor Summary
Constructors Modifier Constructor Description privateEnumByNameColumnMapper(java.lang.Class<E> enumClass)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.util.stream.Stream<java.lang.Enum<?>>enumConstants(java.lang.Class<? extends java.lang.Enum<?>> enumClass)private static java.util.function.Predicate<java.lang.Enum<?>>enumValueMatches(java.lang.String name, java.util.function.BiPredicate<java.lang.String,java.lang.String> comparer)private static java.lang.ObjectgetValueByName(java.lang.Class<? extends java.lang.Enum<?>> enumClass, java.lang.String name)Emap(java.sql.ResultSet rs, int columnNumber, StatementContext ctx)Map the given column of the current row of the result set to an Object.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jdbi.v3.core.mapper.ColumnMapper
init, map
-
-
-
-
Field Detail
-
BY_NAME_CACHE
private static final ConfigCache<java.lang.Class<? extends java.lang.Enum<?>>,ConfigCache<java.lang.String,java.lang.Enum<?>>> BY_NAME_CACHE
-
-
Constructor Detail
-
EnumByNameColumnMapper
private EnumByNameColumnMapper(java.lang.Class<E> enumClass)
-
-
Method Detail
-
map
public E map(java.sql.ResultSet rs, int columnNumber, StatementContext ctx) throws java.sql.SQLException
Description copied from interface:ColumnMapperMap the given column of the current row of the result set to an Object. This method should not cause the result set to advance; allow Jdbi to do that, please.- Specified by:
mapin interfaceColumnMapper<E extends java.lang.Enum<E>>- Parameters:
rs- the result set being iteratedcolumnNumber- the column number to map (starts at 1)ctx- the statement context- Returns:
- the value to return for this column
- Throws:
java.sql.SQLException- if anything goes wrong go ahead and let this percolate; Jdbi will handle it
-
getValueByName
private static java.lang.Object getValueByName(java.lang.Class<? extends java.lang.Enum<?>> enumClass, java.lang.String name)
-
enumValueMatches
private static java.util.function.Predicate<java.lang.Enum<?>> enumValueMatches(java.lang.String name, java.util.function.BiPredicate<java.lang.String,java.lang.String> comparer)
-
enumConstants
private static java.util.stream.Stream<java.lang.Enum<?>> enumConstants(java.lang.Class<? extends java.lang.Enum<?>> enumClass)
-
-