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();
+    }
+}