blob: 57bcbe8e57084fa2729198cd876c24dbd7097481 [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",
Pavlin Radoslavov7c8f69a2014-02-19 19:01:45 -080025 HexString.toHexString(link.getSrcSwitch().getDpid()));
Jonathan Hart891d0502014-02-10 10:04:08 -080026 jsonGenerator.writeNumberField("src-port",
Pavlin Radoslavov7c8f69a2014-02-19 19:01:45 -080027 link.getSrcPort().getNumber());
Jonathan Hart891d0502014-02-10 10:04:08 -080028 jsonGenerator.writeStringField("dst-switch",
Pavlin Radoslavov7c8f69a2014-02-19 19:01:45 -080029 HexString.toHexString(link.getDstSwitch().getDpid()));
Jonathan Hart369875b2014-02-13 10:00:31 -080030 jsonGenerator.writeNumberField("dst-port",
Pavlin Radoslavov7c8f69a2014-02-19 19:01:45 -080031 link.getDstPort().getNumber());
Jonathan Hart891d0502014-02-10 10:04:08 -080032 jsonGenerator.writeEndObject();
33 }
34
35}