All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.geotab.model.serialization.DevicePlanDeserializer Maven / Gradle / Ivy

package com.geotab.model.serialization;

import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.geotab.model.enumeration.DevicePlan;
import java.io.IOException;

/**
 * Custom {@link DevicePlan} deserializer, which returns {@link DevicePlan#UNKNOWN} as default if
 * the json value is not recognized.
 */
public class DevicePlanDeserializer extends JsonDeserializer {

  @Override
  public DevicePlan deserialize(JsonParser jsonParser,
      DeserializationContext deserializationContext) throws IOException, JsonProcessingException {
    return DevicePlan.findOrDefault(jsonParser.getValueAsString());
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy