This is an automated email from the ASF dual-hosted git repository.

rmannibucau pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/johnzon.git


The following commit(s) were added to refs/heads/master by this push:
     new 60ba23ca PojoGenerator extension point before declaration
60ba23ca is described below

commit 60ba23cac6ac770e9f7edb4301c4ec5d492d2481
Author: Romain Manni-Bucau <rmannibu...@gmail.com>
AuthorDate: Tue Aug 9 10:44:55 2022 +0200

    PojoGenerator extension point before declaration
---
 .../org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git 
a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java
 
b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java
index 5db62394..0f0ba037 100644
--- 
a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java
+++ 
b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java
@@ -77,6 +77,7 @@ public class PojoGenerator {
                         .sorted()
                         .map(it -> "import " + it + ";")
                         .collect(joining("\n", "", "\n\n"))) +
+                beforeClassDeclaration() +
                 "public class " + configuration.getClassName() + 
afterClassName() + " {\n" +
                 (attributes.isEmpty() ?
                         ("" +
@@ -223,6 +224,14 @@ public class PojoGenerator {
         return "";
     }
 
+    protected String beforeEnumDeclaration() {
+        return "";
+    }
+
+    protected String beforeClassDeclaration() {
+        return "";
+    }
+
     protected String asType(final String javaName, final JsonObject schema, 
final boolean required) {
         final JsonValue ref = schema.get("$ref");
         if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) {
@@ -334,6 +343,7 @@ public class PojoGenerator {
                         "package " + configuration.getPackageName() + ";\n" +
                         "\n" +
                         enumImports() +
+                        beforeEnumDeclaration() +
                         "public enum " + className + afterEnumName(values, 
injectValues) + " {\n" +
                         values.entrySet().stream()
                                 .map(it -> "" +

Reply via email to