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

com.alibaba.fastjson2.reader.ObjectReaderImplAtomicReference Maven / Gradle / Ivy

Go to download

Fastjson is a JSON processor (JSON parser + JSON generator) written in Java

The newest version!
package com.alibaba.fastjson2.reader;

import com.alibaba.fastjson2.JSONReader;

import java.lang.reflect.Type;
import java.util.concurrent.atomic.AtomicReference;

final class ObjectReaderImplAtomicReference
        extends ObjectReaderPrimitive {
    static final ObjectReaderImplAtomicReference INSTANCE = new ObjectReaderImplAtomicReference(Object.class);

    final Type referenceType;

    public ObjectReaderImplAtomicReference(Type referenceType) {
        super(AtomicReference.class);
        this.referenceType = referenceType;
    }

    @Override
    public Object readObject(JSONReader jsonReader, Type fieldType, Object fieldName, long features) {
        if (jsonReader.nextIfNull()) {
            return null;
        }

        Object value = jsonReader.read(referenceType);
        return new AtomicReference<>(value);
    }

    @Override
    public Object readJSONBObject(JSONReader jsonReader, Type fieldType, Object fieldName, long features) {
        if (jsonReader.nextIfNull()) {
            return null;
        }

        Object value = jsonReader.read(referenceType);
        return new AtomicReference<>(value);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy