org.codehaus.jackson.map
Class DeserializationProblemHandler

java.lang.Object
  extended by org.codehaus.jackson.map.DeserializationProblemHandler

public abstract class DeserializationProblemHandler
extends java.lang.Object

This is the class that can be registered (via DeserializationConfig object owner by ObjectMapper) to get calledn when a potentially recoverable problem is encountered during deserialization process. Handlers can try to resolve the problem, throw an exception or do nothing.

Default implementations for all methods implemented minimal "do nothing" functionality, which is roughly equivalent to not having a registered listener at all. This allows for only implemented handler methods one is interested in, without handling other cases.

Author:
tatu

Constructor Summary
DeserializationProblemHandler()
           
 
Method Summary
 boolean handleUnknownProperty(DeserializationContext ctxt, JsonDeserializer<?> deserializer, java.lang.Object bean, java.lang.String propertyName)
          Method called when a Json Map ("Object") entry with an unrecognized name is encountered.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DeserializationProblemHandler

public DeserializationProblemHandler()
Method Detail

handleUnknownProperty

public boolean handleUnknownProperty(DeserializationContext ctxt,
                                     JsonDeserializer<?> deserializer,
                                     java.lang.Object bean,
                                     java.lang.String propertyName)
                              throws java.io.IOException,
                                     JsonProcessingException
Method called when a Json Map ("Object") entry with an unrecognized name is encountered. Content (supposedly) matching the property are accessible via parser that can be obtained from the content. Handler can also choose to skip the content; if so, it MUST return true to indicate it did handle property succesfully. Skipping is usually done like so:
  ctxt.getParser().skipChildren();

Returns:
True if the problem was succesfully resolved (and content available used or skipped); false if listen
Throws:
java.io.IOException
JsonProcessingException