From 8be4b0ffe6b5e5f89e8bb3d94e87d0aa98dc5aeb Mon Sep 17 00:00:00 2001 From: Jan Rieke Date: Sun, 16 Feb 2020 15:17:20 +0100 Subject: @Jacksonized: modify builders that they can be used by Jackson --- .../after-ecj/JacksonizedBuilderComplex.java | 44 ++++++++++++++++++++++ .../after-ecj/JacksonizedBuilderSimple.java | 38 +++++++++++++++++++ .../after-ecj/JacksonizedSuperBuilderSimple.java | 44 ++++++++++++++++++++++ ...JacksonizedSuperBuilderWithJsonDeserialize.java | 36 ++++++++++++++++++ 4 files changed, 162 insertions(+) create mode 100644 test/transform/resource/after-ecj/JacksonizedBuilderComplex.java create mode 100644 test/transform/resource/after-ecj/JacksonizedBuilderSimple.java create mode 100644 test/transform/resource/after-ecj/JacksonizedSuperBuilderSimple.java create mode 100644 test/transform/resource/after-ecj/JacksonizedSuperBuilderWithJsonDeserialize.java (limited to 'test/transform/resource/after-ecj') diff --git a/test/transform/resource/after-ecj/JacksonizedBuilderComplex.java b/test/transform/resource/after-ecj/JacksonizedBuilderComplex.java new file mode 100644 index 00000000..8a06b34b --- /dev/null +++ b/test/transform/resource/after-ecj/JacksonizedBuilderComplex.java @@ -0,0 +1,44 @@ +import java.util.List; +import lombok.Builder; +import lombok.extern.jackson.Jacksonized; +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = JacksonizedBuilderComplex.TestVoidName.class) class JacksonizedBuilderComplex { + public static @java.lang.SuppressWarnings("all") @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "with",buildMethodName = "execute") class TestVoidName { + private @java.lang.SuppressWarnings("all") T number; + private @java.lang.SuppressWarnings("all") int arg2; + private @java.lang.SuppressWarnings("all") String arg3; + private @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex selfRef; + @java.lang.SuppressWarnings("all") TestVoidName() { + super(); + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex.TestVoidName withNumber(final T number) { + this.number = number; + return this; + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex.TestVoidName withArg2(final int arg2) { + this.arg2 = arg2; + return this; + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex.TestVoidName withArg3(final String arg3) { + this.arg3 = arg3; + return this; + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex.TestVoidName withSelfRef(final JacksonizedBuilderComplex selfRef) { + this.selfRef = selfRef; + return this; + } + public @java.lang.SuppressWarnings("all") void execute() { + JacksonizedBuilderComplex.testVoidWithGenerics(this.number, this.arg2, this.arg3, this.selfRef); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return (((((((("JacksonizedBuilderComplex.TestVoidName(number=" + this.number) + ", arg2=") + this.arg2) + ", arg3=") + this.arg3) + ", selfRef=") + this.selfRef) + ")"); + } + } + JacksonizedBuilderComplex() { + super(); + } + private static @Jacksonized @Builder(buildMethodName = "execute",setterPrefix = "with") void testVoidWithGenerics(T number, int arg2, String arg3, JacksonizedBuilderComplex selfRef) { + } + public static @java.lang.SuppressWarnings("all") JacksonizedBuilderComplex.TestVoidName builder() { + return new JacksonizedBuilderComplex.TestVoidName(); + } +} diff --git a/test/transform/resource/after-ecj/JacksonizedBuilderSimple.java b/test/transform/resource/after-ecj/JacksonizedBuilderSimple.java new file mode 100644 index 00000000..2e0a4e0c --- /dev/null +++ b/test/transform/resource/after-ecj/JacksonizedBuilderSimple.java @@ -0,0 +1,38 @@ +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +@lombok.extern.jackson.Jacksonized @JsonIgnoreProperties(ignoreUnknown = true) @lombok.Builder(access = lombok.AccessLevel.PROTECTED) @com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder.class) class JacksonizedBuilderSimple { + protected static @java.lang.SuppressWarnings("all") @JsonIgnoreProperties(ignoreUnknown = true) @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "",buildMethodName = "build") class JacksonizedBuilderSimpleBuilder { + private @java.lang.SuppressWarnings("all") int yes; + private @java.lang.SuppressWarnings("all") List also; + @java.lang.SuppressWarnings("all") JacksonizedBuilderSimpleBuilder() { + super(); + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder yes(final int yes) { + this.yes = yes; + return this; + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder also(final List also) { + this.also = also; + return this; + } + public @java.lang.SuppressWarnings("all") JacksonizedBuilderSimple build() { + return new JacksonizedBuilderSimple(this.yes, this.also); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return (((("JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder(yes=" + this.yes) + ", also=") + this.also) + ")"); + } + } + private final int noshow = 0; + private final int yes; + private List also; + private int $butNotMe; + @java.lang.SuppressWarnings("all") JacksonizedBuilderSimple(final int yes, final List also) { + super(); + this.yes = yes; + this.also = also; + } + protected static @java.lang.SuppressWarnings("all") JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder builder() { + return new JacksonizedBuilderSimple.JacksonizedBuilderSimpleBuilder(); + } +} diff --git a/test/transform/resource/after-ecj/JacksonizedSuperBuilderSimple.java b/test/transform/resource/after-ecj/JacksonizedSuperBuilderSimple.java new file mode 100644 index 00000000..8227162a --- /dev/null +++ b/test/transform/resource/after-ecj/JacksonizedSuperBuilderSimple.java @@ -0,0 +1,44 @@ +public class JacksonizedSuperBuilderSimple { + public static @lombok.extern.jackson.Jacksonized @lombok.experimental.SuperBuilder @com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true) @com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = JacksonizedSuperBuilderSimple.Parent.ParentBuilderImpl.class) class Parent { + public static abstract @java.lang.SuppressWarnings("all") class ParentBuilder> { + private @java.lang.SuppressWarnings("all") int field1; + public ParentBuilder() { + super(); + } + protected abstract @java.lang.SuppressWarnings("all") B self(); + public abstract @java.lang.SuppressWarnings("all") C build(); + public @java.lang.SuppressWarnings("all") B field1(final int field1) { + this.field1 = field1; + return self(); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return (("JacksonizedSuperBuilderSimple.Parent.ParentBuilder(field1=" + this.field1) + ")"); + } + } + static final @java.lang.SuppressWarnings("all") @com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true) @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "",buildMethodName = "build") class ParentBuilderImpl extends JacksonizedSuperBuilderSimple.Parent.ParentBuilder { + private ParentBuilderImpl() { + super(); + } + protected @java.lang.Override @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderSimple.Parent.ParentBuilderImpl self() { + return this; + } + public @java.lang.Override @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderSimple.Parent build() { + return new JacksonizedSuperBuilderSimple.Parent(this); + } + } + int field1; + protected @java.lang.SuppressWarnings("all") Parent(final JacksonizedSuperBuilderSimple.Parent.ParentBuilder b) { + super(); + this.field1 = b.field1; + } + public static @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderSimple.Parent.ParentBuilder builder() { + return new JacksonizedSuperBuilderSimple.Parent.ParentBuilderImpl(); + } + } + public JacksonizedSuperBuilderSimple() { + super(); + } + public static void test() { + Parent x = Parent.builder().field1(5).build(); + } +} \ No newline at end of file diff --git a/test/transform/resource/after-ecj/JacksonizedSuperBuilderWithJsonDeserialize.java b/test/transform/resource/after-ecj/JacksonizedSuperBuilderWithJsonDeserialize.java new file mode 100644 index 00000000..a5677275 --- /dev/null +++ b/test/transform/resource/after-ecj/JacksonizedSuperBuilderWithJsonDeserialize.java @@ -0,0 +1,36 @@ +public @lombok.extern.jackson.Jacksonized @lombok.experimental.SuperBuilder @com.fasterxml.jackson.databind.annotation.JsonDeserialize class JacksonizedSuperBuilderWithJsonDeserialize { + public static abstract @java.lang.SuppressWarnings("all") class JacksonizedSuperBuilderWithJsonDeserializeBuilder> { + private @java.lang.SuppressWarnings("all") int field1; + public JacksonizedSuperBuilderWithJsonDeserializeBuilder() { + super(); + } + protected abstract @java.lang.SuppressWarnings("all") B self(); + public abstract @java.lang.SuppressWarnings("all") C build(); + public @java.lang.SuppressWarnings("all") B field1(final int field1) { + this.field1 = field1; + return self(); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return (("JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilder(field1=" + this.field1) + ")"); + } + } + private static final @java.lang.SuppressWarnings("all") class JacksonizedSuperBuilderWithJsonDeserializeBuilderImpl extends JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilder { + private JacksonizedSuperBuilderWithJsonDeserializeBuilderImpl() { + super(); + } + protected @java.lang.Override @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilderImpl self() { + return this; + } + public @java.lang.Override @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderWithJsonDeserialize build() { + return new JacksonizedSuperBuilderWithJsonDeserialize(this); + } + } + int field1; + protected @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderWithJsonDeserialize(final JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilder b) { + super(); + this.field1 = b.field1; + } + public static @java.lang.SuppressWarnings("all") JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilder builder() { + return new JacksonizedSuperBuilderWithJsonDeserialize.JacksonizedSuperBuilderWithJsonDeserializeBuilderImpl(); + } +} \ No newline at end of file -- cgit