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

com.alachisoft.ncache.client.util.PayLoadDeserializationJson Maven / Gradle / Ivy

package com.alachisoft.ncache.client.util;

import com.alachisoft.ncache.runtime.caching.PayloadDeserializer;
import com.alachisoft.ncache.runtime.exceptions.OperationFailedException;
import com.alachisoft.ncache.serialization.JSON.JsonBinaryFormatter;
import com.fasterxml.jackson.core.JsonProcessingException;

public class PayLoadDeserializationJson  implements PayloadDeserializer {


    @Override
    public  T PayloadDeserializionJson(Object serializedObject, Class cls) throws OperationFailedException, JsonProcessingException {
        Object deserialized = JsonBinaryFormatter.deserializeObject(JsonBinaryFormatter.decodeString((byte[]) serializedObject), cls);

        if(!cls.isAssignableFrom(deserialized.getClass()))
        {
            throw new ClassCastException("class "+deserialized.getClass().getName()+" cannot be cast to "+cls);
        }

        return (T) deserialized;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy