blob: c63b676a37007bf580de292b1ce0888b4dde84a5 [file] [log] [blame]
tom0872a172014-09-23 11:24:26 -07001package org.onlab.onos.store.serializers;
Yuta HIGUCHIf6509f62014-09-23 09:47:42 -07002
3import java.net.URI;
4
5import org.onlab.onos.net.DeviceId;
6
7import com.esotericsoftware.kryo.Kryo;
8import com.esotericsoftware.kryo.Serializer;
9import com.esotericsoftware.kryo.io.Input;
10import com.esotericsoftware.kryo.io.Output;
11
Yuta HIGUCHIf6509f62014-09-23 09:47:42 -070012/**
13* Kryo Serializer for {@link DeviceId}.
14*/
15public final class DeviceIdSerializer extends Serializer<DeviceId> {
16
17 @Override
18 public void write(Kryo kryo, Output output, DeviceId object) {
19 kryo.writeObject(output, object.uri());
20 }
21
22 @Override
23 public DeviceId read(Kryo kryo, Input input, Class<DeviceId> type) {
24 final URI uri = kryo.readObject(input, URI.class);
25 return DeviceId.deviceId(uri);
26 }
27}