blob: 09358c4bee96f1aa058f65c96ced6814fb180df3 [file] [log] [blame]
Pavlin Radoslavov5cf1fe02014-07-03 22:52:25 -07001package net.onrc.onos.core.topology.web.serializers;
2
3import java.io.IOException;
4
5import net.onrc.onos.core.topology.SwitchEvent;
6
7import org.codehaus.jackson.JsonGenerator;
8import org.codehaus.jackson.map.SerializerProvider;
9import org.codehaus.jackson.map.ser.std.SerializerBase;
10
11public class SwitchEventSerializer extends SerializerBase<SwitchEvent> {
12
13 public SwitchEventSerializer() {
14 super(SwitchEvent.class);
15 }
16
17 @Override
18 public void serialize(SwitchEvent switchEvent, JsonGenerator jsonGenerator,
19 SerializerProvider serializerProvider) throws IOException {
20 //
21 // TODO: For now, the JSON format of the serialized output should
22 // be same as the JSON format of the corresponding class Switch.
23 // In the future, we will use a single serializer.
24 //
25
26 jsonGenerator.writeStartObject();
27 jsonGenerator.writeStringField("dpid",
28 switchEvent.getDpid().toString());
29 jsonGenerator.writeStringField("state", "ACTIVE");
30 //
31 // TODO: For now, we write empty "ports" array for consistency
32 // with the corresponding Switch JSON serializer.
33 //
34 jsonGenerator.writeArrayFieldStart("ports");
35 /*
36 for (Port port : sw.getPorts()) {
37 jsonGenerator.writeObject(port);
38 }
39 */
40 jsonGenerator.writeEndArray();
41 jsonGenerator.writeEndObject();
42 }
43}