Skip to content
This repository has been archived by the owner on Apr 11, 2023. It is now read-only.

List of enums #27

Closed
ryango opened this issue Jun 9, 2015 · 4 comments
Closed

List of enums #27

ryango opened this issue Jun 9, 2015 · 4 comments

Comments

@ryango
Copy link

ryango commented Jun 9, 2015

Seems to not work. Might be doing something wrong in the annotation

@JsonField(fieldName = "test_list",
valueExtractFormatter = "TestObject.TestEnum.valueOf(${parser_object}.getText())",
fieldAssignmentFormatter = "${object_varname}.${field_varname} = ${extracted_value}",
serializeCodeFormatter = "${generator_object}.writeStringField("${json_fieldname}", ${iterator}.toString())")
public List testList;

error: annotation exception: java.lang.IllegalStateException: Could not divine java type for test_list in class com.example.TestObject
at com.instagram.common.json.annotation.processor.JsonParserClassData.getJavaType(JsonParserClassData.java:407)
at com.instagram.common.json.annotation.processor.JsonParserClassData.generateArrayParser(JsonParserClassData.java:324)
at com.instagram.common.json.annotation.processor.JsonParserClassData.generateCollectionParser(JsonParserClassData.java:315)
at com.instagram.common.json.annotation.processor.JsonParserClassData.writeFields(JsonParserClassData.java:275)
at com.instagram.common.json.annotation.processor.JsonParserClassData.access$000(JsonParserClassData.java:40)
at com.instagram.common.json.annotation.processor.JsonParserClassData$1.emitJava(JsonParserClassData.java:159)

@ttung
Copy link
Contributor

ttung commented Jun 9, 2015

Collection types must be fully specified, like, List<String>.

@ryango
Copy link
Author

ryango commented Jun 9, 2015

Forgot to escape my <>. Gets filtered by markdown. Code that is failing has List

@ttung
Copy link
Contributor

ttung commented Dec 19, 2017

Hard to say without more of your sample. There's a unit test that covers enums, so it has to work at least somewhat. https://github.com/Instagram/ig-json-parser/blob/master/processor/testuut/src/main/java/com/instagram/common/json/annotation/processor/EnumUUT.java

@aimango
Copy link
Contributor

aimango commented Jul 1, 2020

This was fixed in #60

@aimango aimango closed this as completed Jul 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants