blob: 709dce00b515cbc3d9059c0ce659cbea6cae34c8 [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
12//TODO move to util, etc.
13/**
14* Kryo Serializer for {@link DeviceId}.
15*/
16public final class DeviceIdSerializer extends Serializer<DeviceId> {
17
18 @Override
19 public void write(Kryo kryo, Output output, DeviceId object) {
20 kryo.writeObject(output, object.uri());
21 }
22
23 @Override
24 public DeviceId read(Kryo kryo, Input input, Class<DeviceId> type) {
25 final URI uri = kryo.readObject(input, URI.class);
26 return DeviceId.deviceId(uri);
27 }
28}