package com.fasterxml.jackson.datatype.guava.deser.multimap.list;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.fasterxml.jackson.databind.KeyDeserializer;
import com.fasterxml.jackson.databind.deser.NullValueProvider;
import com.fasterxml.jackson.databind.jsontype.TypeDeserializer;
import com.fasterxml.jackson.databind.type.MapLikeType;
import com.fasterxml.jackson.datatype.guava.deser.multimap.GuavaMultimapDeserializer;
import com.google.common.collect.ArrayListMultimap;
import java.lang.reflect.Method;
public class ArrayListMultimapDeserializer
extends GuavaMultimapDeserializer<ArrayListMultimap<Object,Object>>
{
private static final long serialVersionUID = 1L;
public ArrayListMultimapDeserializer(MapLikeType type, KeyDeserializer keyDeserializer,
TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer) {
super(type, keyDeserializer, elementTypeDeserializer, elementDeserializer);
}
public ArrayListMultimapDeserializer(MapLikeType type, KeyDeserializer keyDeserializer,
TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer,
Method creatorMethod, NullValueProvider nvp) {
super(type, keyDeserializer, elementTypeDeserializer, elementDeserializer, creatorMethod, nvp);
}
@Override
protected ArrayListMultimap<Object, Object> createMultimap() {
return ArrayListMultimap.create();
}
@Override
protected JsonDeserializer<?> _createContextual(MapLikeType type,
KeyDeserializer keyDeserializer, TypeDeserializer typeDeserializer,
JsonDeserializer<?> elementDeserializer, Method method,
NullValueProvider nvp) {
return new ArrayListMultimapDeserializer(type, keyDeserializer, typeDeserializer,
elementDeserializer, method, nvp);
}
}