blob: bb13c75e54d092f9f9999da23f68adeb15b14c22 [file] [log] [blame]
Jonathan Hart891d0502014-02-10 10:04:08 -08001package net.onrc.onos.ofcontroller.networkgraph.serializers;
2
3import java.io.IOException;
4
5import net.onrc.onos.ofcontroller.networkgraph.Link;
6
7import org.codehaus.jackson.JsonGenerationException;
8import org.codehaus.jackson.JsonGenerator;
9import org.codehaus.jackson.map.SerializerProvider;
10import org.codehaus.jackson.map.ser.std.SerializerBase;
11import org.openflow.util.HexString;
12
13public class LinkSerializer extends SerializerBase<Link> {
14
15 public LinkSerializer() {
16 super(Link.class);
17 }
18
19 @Override
20 public void serialize(Link link, JsonGenerator jsonGenerator,
21 SerializerProvider serializerProvider)
22 throws IOException, JsonGenerationException {
23 jsonGenerator.writeStartObject();
24 jsonGenerator.writeStringField("src-switch",
25 HexString.toHexString(link.getSourceSwitch().getDpid()));
26 jsonGenerator.writeNumberField("src-port",
27 link.getSourcePort().getNumber());
28 jsonGenerator.writeStringField("dst-switch",
29 HexString.toHexString(link.getDestinationSwitch().getDpid()));
Jonathan Hart369875b2014-02-13 10:00:31 -080030 jsonGenerator.writeNumberField("dst-port",
Jonathan Hart891d0502014-02-10 10:04:08 -080031 link.getDestinationPort().getNumber());
32 jsonGenerator.writeEndObject();
33 }
34
35}