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

com.nedap.archie.kryo.URISerializer Maven / Gradle / Ivy

The newest version!
package com.nedap.archie.kryo;

import com.esotericsoftware.kryo.kryo5.Kryo;
import com.esotericsoftware.kryo.kryo5.io.Input;
import com.esotericsoftware.kryo.kryo5.io.Output;
import com.esotericsoftware.kryo.kryo5.serializers.ImmutableSerializer;

import java.net.URI;

/**
 * A safe serializer for java.net.URI to better support cloning of a DvUri RMObject.
 * This implementation is functionally correct, but irrelevant because we only clone objects.
 * Should be removed in Kryo 6 where it will be registered by default.
 */
public class URISerializer extends ImmutableSerializer {

    @Override
    public void write(final Kryo kryo, final Output output, final URI uri) {
        output.writeString(uri.toString());
    }

    @Override
    public URI read(final Kryo kryo, final Input input, final Class uriClass) {
        return URI.create(input.readString());
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy