blob: 3abb7847388978f4acd0aa5c07fc931bab25c737 [file] [log] [blame]
package org.onlab.onos.store.serializers;
import org.onlab.onos.net.provider.ProviderId;
import com.esotericsoftware.kryo.Kryo;
import com.esotericsoftware.kryo.Serializer;
import com.esotericsoftware.kryo.io.Input;
import com.esotericsoftware.kryo.io.Output;
//TODO move to util, etc.
/**
* Serializer for {@link ProviderId}.
*/
public class ProviderIdSerializer extends Serializer<ProviderId> {
/**
* Default constructor.
*/
public ProviderIdSerializer() {
// non-null, immutable
super(false, true);
}
@Override
public void write(Kryo kryo, Output output, ProviderId object) {
output.writeString(object.scheme());
output.writeString(object.id());
}
@Override
public ProviderId read(Kryo kryo, Input input, Class<ProviderId> type) {
String scheme = input.readString();
String id = input.readString();
return new ProviderId(scheme, id);
}
}