[jOOQ/jOOQ#14883] Regression: KotlinGenerator produces superfluous public keyword for overriding methods

This commit is contained in:
Lukas Eder 2023-03-30 10:22:25 +02:00
parent 838e24d50c
commit ecdfd8a90a

View File

@ -59,6 +59,7 @@ import static org.jooq.impl.DSL.name;
import static org.jooq.impl.QOM.GenerationOption.STORED;
import static org.jooq.impl.QOM.GenerationOption.VIRTUAL;
import static org.jooq.meta.AbstractTypedElementDefinition.getDataType;
import static org.jooq.meta.jaxb.VisibilityModifier.PUBLIC;
import static org.jooq.tools.StringUtils.isBlank;
import java.io.File;
@ -371,8 +372,15 @@ public class JavaGenerator extends AbstractGenerator {
private String visibilityPublic() {
if (scala)
return "";
// [#14855] Make sure visibility isn't reduced to anything less than "public"
// [#14883] Don't generate explicit "public" unless explicitly requested
else if (kotlin)
return "public ";
return visibility(
generateVisibilityModifier() == VisibilityModifier.PUBLIC
? VisibilityModifier.PUBLIC
: VisibilityModifier.DEFAULT
);
else
return "public ";
}