From f9f2880addcd58f729ccbd11ae683df30b81a965 Mon Sep 17 00:00:00 2001 From: Ernest Mishkin Date: Tue, 7 Nov 2017 16:59:12 -0800 Subject: [PATCH] [#4627] Support parameter info compiled into bytecode --- .../java/org/jooq/impl/DefaultRecordMapper.java | 17 ++++++++++++----- jOOQ/src/main/resources/META-INF/ABOUT.txt | 3 ++- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java index d28fef4079..c9078e9227 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java @@ -55,6 +55,7 @@ import java.lang.reflect.Constructor; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.lang.reflect.Parameter; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Proxy; import java.sql.Timestamp; @@ -67,6 +68,7 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.concurrent.Callable; +import java.util.stream.Collectors; import java.util.stream.Stream; import javax.persistence.Column; @@ -332,7 +334,7 @@ public class DefaultRecordMapper implements RecordMapper implements RecordMapper implements RecordMapper { + private class ImmutablePOJOMapperWithParameterNames implements RecordMapper { private final Constructor constructor; private final Class[] parameterTypes; @@ -831,9 +838,9 @@ public class DefaultRecordMapper implements RecordMapper constructor, ConstructorProperties properties) { + ImmutablePOJOMapperWithParameterNames(Constructor constructor, List propertyNames) { this.constructor = constructor; - this.propertyNames = Arrays.asList(properties.value()); + this.propertyNames = propertyNames; this.useAnnotations = hasColumnAnnotations(configuration, type); this.parameterTypes = constructor.getParameterTypes(); this.parameterValues = new Object[parameterTypes.length]; diff --git a/jOOQ/src/main/resources/META-INF/ABOUT.txt b/jOOQ/src/main/resources/META-INF/ABOUT.txt index bea887547e..9e701b88ed 100644 --- a/jOOQ/src/main/resources/META-INF/ABOUT.txt +++ b/jOOQ/src/main/resources/META-INF/ABOUT.txt @@ -11,6 +11,7 @@ Authors and contributors of jOOQ or parts of jOOQ in alphabetical order: - Christopher Deckers - Ed Schaller - Eric Peters +- Ernest Mishkin - Espen Stromsnes - Eugeny Karpov - Fabrice Le Roy @@ -53,4 +54,4 @@ Authors and contributors of jOOQ or parts of jOOQ in alphabetical order: - Zoltan Tamasi See the following website for details about contributing to jOOQ: -https://github.com/jOOQ/jOOQ/blob/master/CONTRIBUTING.md \ No newline at end of file +https://github.com/jOOQ/jOOQ/blob/master/CONTRIBUTING.md