Interface ContextualKeyDeserializer


  • public interface ContextualKeyDeserializer
    Add-on interface that KeyDeserializers can implement to get a callback that can be used to create contextual instances of key deserializer to use for handling Map keys of supported type. This can be useful for key deserializers that can be configured by annotations, or should otherwise have differing behavior depending on what kind of Map property keys are being deserialized.
    • Method Detail

      • createContextual

        KeyDeserializer createContextual​(DeserializationContext ctxt,
                                         BeanProperty property)
                                  throws JsonMappingException
        Method called to see if a different (or differently configured) key deserializer is needed to deserialize keys of specified Map property. Note that instance that this method is called on is typically shared one and as a result method should NOT modify this instance but rather construct and return a new instance. This instance should only be returned as-is, in case it is already suitable for use.
        Parameters:
        ctxt - Deserialization context to access configuration, additional deserializers that may be needed by this deserializer
        property - Method, field or constructor parameter that declared Map for which contextual instance will be used. Will not be available when deserializing root-level Map value; otherwise should not be null.
        Returns:
        Key deserializer to use for deserializing keys specified Map property, may be this instance or a new instance.
        Throws:
        JsonMappingException