[#4372] UDTRecord is not "attached" when fetched from standalone stored function call
This commit is contained in:
parent
ab13588991
commit
de4f7fad12
@ -224,7 +224,7 @@ xxxxxx xxxxx xxxxxxxxxxxxxxxxxx xxxxxxx xxxxxxxxxxxxx xxxxxxxxxx xxxxxxxxxxxxxx
|
||||
xxxxxxxxx
|
||||
xxxxxxxxxxx
|
||||
xxxxxx xxxxx xxxx xxxxxxxxxxxxxxxxxx xxxxxx xxxxxx xxxxxxxxxxxx x
|
||||
xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxx
|
||||
x
|
||||
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
@ -67,6 +67,7 @@ import static org.jooq.impl.DSL.inline;
|
||||
import static org.jooq.impl.DSL.name;
|
||||
import static org.jooq.impl.DSL.using;
|
||||
import static org.jooq.impl.DefaultExecuteContext.localTargetConnection;
|
||||
import static org.jooq.impl.Utils.attachRecords;
|
||||
import static org.jooq.impl.Utils.needsBackslashEscaping;
|
||||
import static org.jooq.tools.jdbc.JDBCUtils.safeClose;
|
||||
import static org.jooq.tools.jdbc.JDBCUtils.safeFree;
|
||||
@ -95,6 +96,7 @@ import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
// ...
|
||||
import org.jooq.Attachable;
|
||||
import org.jooq.Binding;
|
||||
import org.jooq.BindingGetResultSetContext;
|
||||
import org.jooq.BindingGetSQLInputContext;
|
||||
@ -1375,7 +1377,7 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
}
|
||||
/* [pro] xx
|
||||
xxxx xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
x
|
||||
xx [/pro] */
|
||||
else if (EnumType.class.isAssignableFrom(type)) {
|
||||
@ -1400,6 +1402,10 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
result = (T) unlob(ctx.resultSet().getObject(ctx.index()));
|
||||
}
|
||||
|
||||
// [#4372] Attach records if possible / required
|
||||
if (result instanceof Attachable && attachRecords(ctx.configuration()))
|
||||
((Attachable) result).attach(ctx.configuration());
|
||||
|
||||
ctx.value(converter.from(result));
|
||||
}
|
||||
|
||||
@ -1526,7 +1532,7 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
}
|
||||
/* [pro] xx
|
||||
xxxx xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
x
|
||||
xx [/pro] */
|
||||
else if (EnumType.class.isAssignableFrom(type)) {
|
||||
@ -1551,6 +1557,10 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
result = (T) ctx.statement().getObject(ctx.index());
|
||||
}
|
||||
|
||||
// [#4372] Attach records if possible / required
|
||||
if (result instanceof Attachable && attachRecords(ctx.configuration()))
|
||||
((Attachable) result).attach(ctx.configuration());
|
||||
|
||||
ctx.value(converter.from(result));
|
||||
}
|
||||
|
||||
@ -1657,7 +1667,7 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
}
|
||||
/* [pro] xx
|
||||
xxxx xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
xxxxxx x xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxx xxxxxxxxxxxxxxxx xxxxxx
|
||||
x
|
||||
xx [/pro] */
|
||||
else if (EnumType.class.isAssignableFrom(type)) {
|
||||
@ -1677,7 +1687,7 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
|
||||
|
||||
/* [pro] xx
|
||||
xxxxxxx xxxxxx xxxxx xxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxx xxxxxxx xxxxxxxxxxxxxxx xxxxx xxxxxx xxxxxxxxxxxx x
|
||||
xxxxxxx xxxxxx xxxxx xxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx xxxxx xxxxxx xxxxxxx xxxxxxx xxxxxxxxxxxxxxx xxxxx xxxxxx xxxxxxxxxxxx x
|
||||
xx xxxxxx xx xxxxx x
|
||||
xxxxxx xxxxx
|
||||
x
|
||||
@ -1685,11 +1695,11 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
xx xxxxx xxxxxx xxx xxxxx xxxxxx xxxx xxxx xxxxxxx
|
||||
xx xxx xxxxxxx xxxx xxxxxxxxx xx xxxx x xxx xxxxxxxx xxxxxxxxx xx
|
||||
xx xxx xxxx xxx xxx
|
||||
xxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx
|
||||
xxxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx
|
||||
x
|
||||
x
|
||||
|
||||
xxxxxx xxxxx xxx xxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx xxxxxxx xxxxx xxxxxxx xxxxxx xxxxxxxxxxxx x
|
||||
xxxxxx xxxxx xxx xxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx xxxxxxxxxxxxxx xxxxxxx xxxxx xxxxxxx xxxxxx xxxxxxxxxxxx x
|
||||
xx xxxxxxx xx xxxxx x
|
||||
xxxxxxxxxxxxxxxx xxxxxx
|
||||
x
|
||||
@ -1707,6 +1717,10 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
|
||||
xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
x
|
||||
|
||||
xx xxxxxxx xxxxxx xxxxxxx xx xxxxxxxx x xxxxxxxx
|
||||
xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
xxxxxx xxxxxxx
|
||||
x
|
||||
|
||||
|
||||
29
pom.xml
29
pom.xml
@ -144,7 +144,7 @@
|
||||
<email>truesaint@gmail.com</email>
|
||||
<roles>
|
||||
<role>firebird-support</role>
|
||||
</roles>
|
||||
</roles>
|
||||
</contributor>
|
||||
</contributors>
|
||||
|
||||
@ -237,7 +237,7 @@
|
||||
<encoding>UTF-8</encoding>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
@ -288,7 +288,7 @@
|
||||
<activeByDefault>true</activeByDefault>
|
||||
</activation>
|
||||
</profile>
|
||||
|
||||
|
||||
<profile>
|
||||
<id>release-oss</id>
|
||||
<properties>
|
||||
@ -330,7 +330,7 @@
|
||||
<useDefaultExcludes>true</useDefaultExcludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
|
||||
<plugin>
|
||||
<inherited>true</inherited>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
@ -350,7 +350,7 @@
|
||||
<encoding>UTF-8</encoding>
|
||||
<show>protected</show>
|
||||
<notree>true</notree>
|
||||
|
||||
|
||||
<!-- Avoid running into Java 8's very restrictive doclint issues -->
|
||||
<additionalparam>-Xdoclint:none</additionalparam>
|
||||
</configuration>
|
||||
@ -358,7 +358,7 @@
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
|
||||
<!-- [pro] xxx
|
||||
xxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxx
|
||||
@ -386,7 +386,7 @@
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
|
||||
xxxx xxxxx xxxxxxx xxxx xxxx xxx xxxx xxxxxxxxxxx xxxxxxx xxxxxx xxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxx
|
||||
@ -394,7 +394,7 @@
|
||||
xxxxxxxxxx
|
||||
xxxxxxxx
|
||||
xxxxxxxxxx
|
||||
|
||||
|
||||
xxxxxxxxx
|
||||
xxxx xxxx xxxx xxxxxxx xx xxxx xxxx xxx xxxxx xxxxxxxxxxxxxxxxxx xxxxxxx xxx
|
||||
xxxxxxxxxxxxxxxxxxxx
|
||||
@ -421,7 +421,7 @@
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxx
|
||||
xxxxxxxxx
|
||||
|
||||
|
||||
xxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
@ -447,7 +447,7 @@
|
||||
xxx xxxx x xxxx xx xxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
|
||||
xxxxxxxxxxx x
|
||||
xxx xx x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x xxxxxxxxxxxxxxxxxx xxxxxxxx x xxxxx
|
||||
xxxxxx x xxxxxxxxx xx xxxxxxxxxxxxxxxxxxxxxxxxxx x xxxxxxxxxxxxx x xxxxxxxxxxxxx x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
@ -456,7 +456,7 @@
|
||||
xxxxxxxxx
|
||||
xxx
|
||||
xxxxxxxxx
|
||||
|
||||
|
||||
xxxx xxxxx xxxxxxx xxxx xxxx xxx xxxx xxxxxxxxxxx xxxxxxx xxxxxx xxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxx
|
||||
@ -464,7 +464,7 @@
|
||||
xxxxxxxxxx
|
||||
xxxxxxxx
|
||||
xxxxxxxxxx
|
||||
|
||||
|
||||
xxxxxxxxx
|
||||
xxxx xxxx xxxx xxxxxxx xx xxxx xxxx xxx xxxxx xxxxxxxxxxx xxxxxxx xxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
@ -491,7 +491,7 @@
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxx
|
||||
xxxxxxxxx
|
||||
|
||||
|
||||
xxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
@ -511,6 +511,9 @@
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
xxxx xxxxx xxxxxxx xxxx xxxx xxx xxxx xxxxxxxxxxx xxxxxxx xxxxxx xxx
|
||||
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
xxxxxxxxxxxxxxxx
|
||||
xxxxxxxxx
|
||||
xxxxxxxxxx
|
||||
|
||||
Loading…
Reference in New Issue
Block a user