Class LangStringListDeserializer

java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<List<LangString>>
dev.jcputney.elearning.parser.input.common.LangStringListDeserializer
All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.NullValueProvider

public class LangStringListDeserializer extends com.fasterxml.jackson.databind.JsonDeserializer<List<LangString>>
Custom deserializer for lists of LangString objects to ensure that they are properly deserialized from XML. This deserializer is used to prevent ClassCastException issues when deserializing LangString objects from XML.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer

    com.fasterxml.jackson.databind.JsonDeserializer.None
  • Constructor Summary

    Constructors
    Constructor
    Description
    Default constructor for the LangStringListDeserializer class.
  • Method Summary

    Modifier and Type
    Method
    Description
    deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext context)
    Deserializes JSON input into a list of LangString objects.

    Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer

    deserialize, deserializeWithType, deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, handledType, isCachable, logicalType, replaceDelegatee, supportsUpdate, unwrappingDeserializer

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LangStringListDeserializer

      public LangStringListDeserializer()
      Default constructor for the LangStringListDeserializer class.
  • Method Details

    • deserialize

      public List<LangString> deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext context) throws IOException
      Deserializes JSON input into a list of LangString objects. The method processes JSON structures such as single values, arrays, or objects containing specific node types (e.g., "string" or "langstring") and converts them into the LangString data model.
      Specified by:
      deserialize in class com.fasterxml.jackson.databind.JsonDeserializer<List<LangString>>
      Parameters:
      p - the JsonParser used to read the JSON content
      context - the deserialization context
      Returns:
      a list of LangString objects deserialized from the JSON input
      Throws:
      IOException - if an I/O error occurs during the deserialization process