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

com.cosmian.rest.kmip.json.KmipEnumSerializer Maven / Gradle / Ivy

package com.cosmian.rest.kmip.json;

import java.io.IOException;
import java.util.logging.Logger;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.ser.std.StdSerializer;

public class KmipEnumSerializer extends StdSerializer> {

    private static final Logger logger = Logger.getLogger(KmipEnumSerializer.class.getName());

    private final String tag;

    public KmipEnumSerializer(Class> t, String tag) {
        super(t);
        this.tag = tag;
    }

    @Override
    public void serialize(Enum value, JsonGenerator generator, SerializerProvider serializers) throws IOException {

        logger.finer("Serializing a " + value.getClass().toString());

        generator.writeStartObject();
        generator.writeFieldName("tag");
        generator.writeString(tag);
        generator.writeFieldName("type");
        generator.writeString("Enumeration");
        generator.writeFieldName("value");
        generator.writeString(KmipEnumUtils.to_string(((Enum) value)));
        generator.writeEndObject();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy