Class AccountAccessResponseDeserializer

java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<AccountAccessResponse>
io.mailtrap.serialization.AccountAccessResponseDeserializer
All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.NullValueProvider

public class AccountAccessResponseDeserializer extends com.fasterxml.jackson.databind.JsonDeserializer<AccountAccessResponse>
Custom deserializer for AccountAccessResponse that handles the deserialization of complex fields, including dynamic mapping of the specifier field based on the specifier_type field.

This deserializer uses an ObjectMapper to convert JSON nodes into Java objects. The deserialization process includes:

  • Extracting and converting simple fields such as id, resources, and permissions.
  • Dynamically deserializing the specifier field based on the value of the specifier_type field.

The specifier field is mapped to a specific subclass of Specifier (e.g., UserSpecifier, InviteSpecifier, ApiTokenSpecifier) based on the value of specifier_type.

The deserialized AccountAccessResponse object is then constructed and returned.

  • 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
     
  • Method Summary

    Modifier and Type
    Method
    Description
    deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt)
     

    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

    • AccountAccessResponseDeserializer

      public AccountAccessResponseDeserializer()
  • Method Details