eclipse-vertx / eclipse-vertx/vertx-codegen

Abstract DataObject as property type generate an impossible converter

Open
#114 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
111
Forks
89
PR merge metrics
No merged PRs in 30d

Description

If you make a DataObject of this kind

```java
@DataObject(generateConverter = true)
public class TestObjectWithInterfaceField {

private TestInterface anInterface = new TestInterfaceImpl();

public TestObjectWithInterfaceField() {
}

public TestObjectWithInterfaceField(JsonObject object){

}

public TestInterface getAnInterface() {
return anInterface;
}

public void setAnInterface(TestInterface anInterface) {
this.anInterface = anInterface;
}
}
```

with TestInterface as :

```java
@DataObject
public interface TestInterface {

String getString();

}
```

the generated converted is :

```java
public class TestObjectWithInterfaceFieldConverter {

public static void fromJson(JsonObject json, TestObjectWithInterfaceField obj) {
if (json.getValue("anInterface") instanceof JsonObject) {
obj.setAnInterface(new TestInterface((JsonObject)json.getValue("anInterface")));
}
}

public static void toJson(TestObjectWithInterfaceField obj, JsonObject json) {
}
}
```
Obviously, converter isn't usable, even valid... is it fixable?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.