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

org.codehaus.jackson.map.deser.StdKeyDeserializers Maven / Gradle / Ivy

Go to download

Data Mapper package is a high-performance data binding package built on Jackson JSON processor

There is a newer version: 1.9.13
Show newest version
package org.codehaus.jackson.map.deser;

import java.util.*;

import org.codehaus.jackson.map.KeyDeserializer;
import org.codehaus.jackson.map.type.*;

/**
 * Helper class used to contain simple/well-known key deserializers.
 */
class StdKeyDeserializers
{
    final HashMap _keyDeserializers = new HashMap();

    private StdKeyDeserializers()
    {
        add(new StdKeyDeserializer.BoolKD());
        add(new StdKeyDeserializer.ByteKD());
        add(new StdKeyDeserializer.CharKD());
        add(new StdKeyDeserializer.ShortKD());
        add(new StdKeyDeserializer.IntKD());
        add(new StdKeyDeserializer.LongKD());
        add(new StdKeyDeserializer.FloatKD());
        add(new StdKeyDeserializer.DoubleKD());
    }

    public static HashMap constructAll()
    {
        return new StdKeyDeserializers()._keyDeserializers;
    }

    public static KeyDeserializer constructEnumKeyDeserializer(JavaType type)
    {
        EnumResolver er = EnumResolver.constructFor(type.getRawClass());
        return new StdKeyDeserializer.EnumKD(er);
    }

    void add(StdKeyDeserializer kdeser)
    {
        Class keyClass = kdeser.getKeyClass();
        _keyDeserializers.put(TypeFactory.instance.fromClass(keyClass), kdeser);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy