[jOOQ/jOOQ#14003] Compilation error in generated code when combining
<pojos/>, <interfaces/> and <embeddables/>
This commit is contained in:
parent
f73be0d9da
commit
b8017d917c
@ -2261,6 +2261,10 @@ public class JavaGenerator extends AbstractGenerator {
|
||||
getStrategy().getJavaMemberName(column, Mode.POJO),
|
||||
getStrategy().getJavaMemberName(column, Mode.POJO),
|
||||
udtType);
|
||||
else if (kotlinEffectivelyNotNull(out, t, Mode.RECORD) && !kotlinEffectivelyNotNull(out, t, Mode.POJO))
|
||||
out.println("value.%s?.let { this.%s = it }",
|
||||
getStrategy().getJavaMemberName(column, Mode.POJO),
|
||||
getStrategy().getJavaMemberName(column, Mode.POJO));
|
||||
else
|
||||
out.println("this.%s = value.%s",
|
||||
getStrategy().getJavaMemberName(column, Mode.POJO),
|
||||
@ -2372,14 +2376,6 @@ public class JavaGenerator extends AbstractGenerator {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean kotlinEffectivelyNotNull(JavaWriter out, EmbeddableDefinition e, Mode mode) {
|
||||
for (EmbeddableColumnDefinition c : e.getColumns())
|
||||
if (kotlinEffectivelyNotNull(out, c, mode))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean isArrayOfUDTs(final TypedElementDefinition<?> t, final JavaTypeResolver r) {
|
||||
|
||||
// [#11183] TODO: Move this to DataTypeDefinition?
|
||||
@ -8155,6 +8151,14 @@ public class JavaGenerator extends AbstractGenerator {
|
||||
return kotlinEffectivelyNotNull(out, typed, mode) ? "" : "?";
|
||||
}
|
||||
|
||||
private boolean kotlinEffectivelyNotNull(JavaWriter out, EmbeddableDefinition e, Mode mode) {
|
||||
for (EmbeddableColumnDefinition c : e.getColumns())
|
||||
if (kotlinEffectivelyNotNull(out, c, mode))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean kotlinEffectivelyNotNull(JavaWriter out, TypedElementDefinition<?> typed, Mode mode) {
|
||||
if (mode == Mode.POJO && generateKotlinNotNullPojoAttributes() ||
|
||||
mode == Mode.RECORD && generateKotlinNotNullRecordAttributes() ||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user