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

com.geotab.model.serialization.VehicleFeatureCategoryDeserializer 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.VehicleFeatureCategory;
import java.io.IOException;

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy