From 39884d811e7a8e490929b942db5be7ed77ae0d11 Mon Sep 17 00:00:00 2001 From: Daniel Gerhardt <code@dgerhardt.net> Date: Sat, 17 Feb 2018 13:38:50 +0100 Subject: [PATCH] Revert "Use format instead of type property for Content deserialization" Using format caused problems because Jackson does not support multiple type names being mapped to a single class. This reverts commit 96b0cf42a7f5e47652f26887acc5957b203b2c0c. --- src/main/java/de/thm/arsnova/entities/Content.java | 7 +------ .../entities/serialization/CouchDbDocumentModule.java | 8 ++------ 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/src/main/java/de/thm/arsnova/entities/Content.java b/src/main/java/de/thm/arsnova/entities/Content.java index 9d591cdbb..9988359aa 100644 --- a/src/main/java/de/thm/arsnova/entities/Content.java +++ b/src/main/java/de/thm/arsnova/entities/Content.java @@ -1,6 +1,5 @@ package de.thm.arsnova.entities; -import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonView; import de.thm.arsnova.entities.serialization.View; @@ -12,12 +11,8 @@ import java.util.Objects; @JsonTypeInfo( use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, - property = "format", - visible = true + property = "type" ) -@JsonSubTypes({ - @JsonSubTypes.Type(value = ChoiceQuestionContent.class, name = "ChoiceQuestionContent") -}) public class Content extends Entity { public enum Format { CHOICE, diff --git a/src/main/java/de/thm/arsnova/entities/serialization/CouchDbDocumentModule.java b/src/main/java/de/thm/arsnova/entities/serialization/CouchDbDocumentModule.java index 7584b1556..a99adbf97 100644 --- a/src/main/java/de/thm/arsnova/entities/serialization/CouchDbDocumentModule.java +++ b/src/main/java/de/thm/arsnova/entities/serialization/CouchDbDocumentModule.java @@ -36,12 +36,8 @@ public class CouchDbDocumentModule extends SimpleModule { context.setMixInAnnotations(Entity.class, CouchDbDocumentMixIn.class); context.setMixInAnnotations(de.thm.arsnova.entities.migration.v2.Entity.class, CouchDbDocumentV2MixIn.class); context.registerSubtypes( - new NamedType(Content.class, Content.Format.TEXT.toString()), - new NamedType(Content.class, Content.Format.NUMBER.toString()), - new NamedType(ChoiceQuestionContent.class, Content.Format.CHOICE.toString()), - new NamedType(ChoiceQuestionContent.class, Content.Format.BINARY.toString()), - new NamedType(ChoiceQuestionContent.class, Content.Format.SCALE.toString()), - new NamedType(ChoiceQuestionContent.class, Content.Format.GRID.toString()), + new NamedType(Content.class, Content.class.getSimpleName()), + new NamedType(ChoiceQuestionContent.class, ChoiceQuestionContent.class.getSimpleName()), new NamedType(Answer.class, Answer.class.getSimpleName()), new NamedType(ChoiceAnswer.class, ChoiceAnswer.class.getSimpleName()), new NamedType(TextAnswer.class, TextAnswer.class.getSimpleName())); -- GitLab