Cosmetics: Move JSON serializers under web package.
Change-Id: I9ecdfe358c2861463456450cd59cdd9d66d39503
diff --git a/src/main/java/net/onrc/onos/core/topology/web/serializers/DeviceSerializer.java b/src/main/java/net/onrc/onos/core/topology/web/serializers/DeviceSerializer.java
new file mode 100644
index 0000000..933fde3
--- /dev/null
+++ b/src/main/java/net/onrc/onos/core/topology/web/serializers/DeviceSerializer.java
@@ -0,0 +1,37 @@
+package net.onrc.onos.core.topology.web.serializers;
+
+import java.io.IOException;
+
+import net.onrc.onos.core.topology.Device;
+import net.onrc.onos.core.topology.Port;
+
+import org.codehaus.jackson.JsonGenerationException;
+import org.codehaus.jackson.JsonGenerator;
+import org.codehaus.jackson.map.SerializerProvider;
+import org.codehaus.jackson.map.ser.std.SerializerBase;
+import org.openflow.util.HexString;
+
+public class DeviceSerializer extends SerializerBase<Device> {
+
+ public DeviceSerializer() {
+ super(Device.class);
+ }
+
+ @Override
+ public void serialize(Device dev, JsonGenerator jsonGenerator,
+ SerializerProvider serializerProvider) throws IOException,
+ JsonGenerationException {
+ jsonGenerator.writeStartObject();
+ jsonGenerator.writeStringField("mac", dev.getMacAddress().toString());
+ jsonGenerator.writeFieldName("attachmentPoints");
+ jsonGenerator.writeStartArray();
+ for (Port port : dev.getAttachmentPoints()) {
+ jsonGenerator.writeStartObject();
+ jsonGenerator.writeStringField("dpid", HexString.toHexString(port.getDpid()));
+ jsonGenerator.writeNumberField("port", port.getNumber());
+ jsonGenerator.writeEndObject();
+ }
+ jsonGenerator.writeEndArray();
+ jsonGenerator.writeEndObject();
+ }
+}