Umesh Krishnaswamy | 345ee99 | 2012-12-13 20:29:48 -0800 | [diff] [blame] | 1 | package net.floodlightcontroller.virtualnetwork; |
| 2 | |
| 3 | import java.io.IOException; |
| 4 | import java.util.Iterator; |
| 5 | |
| 6 | import net.floodlightcontroller.util.MACAddress; |
| 7 | |
| 8 | import org.codehaus.jackson.JsonGenerator; |
| 9 | import org.codehaus.jackson.JsonProcessingException; |
| 10 | import org.codehaus.jackson.map.JsonSerializer; |
| 11 | import org.codehaus.jackson.map.SerializerProvider; |
| 12 | |
| 13 | /** |
| 14 | * Serialize a VirtualNetwork object |
| 15 | * @author KC Wang |
| 16 | */ |
| 17 | public class VirtualNetworkSerializer extends JsonSerializer<VirtualNetwork> { |
| 18 | |
| 19 | @Override |
| 20 | public void serialize(VirtualNetwork vNet, JsonGenerator jGen, |
| 21 | SerializerProvider serializer) throws IOException, |
| 22 | JsonProcessingException { |
| 23 | jGen.writeStartObject(); |
| 24 | |
| 25 | jGen.writeStringField("name", vNet.name); |
| 26 | jGen.writeStringField("guid", vNet.guid); |
| 27 | jGen.writeStringField("gateway", vNet.gateway); |
| 28 | |
| 29 | jGen.writeArrayFieldStart("mac"); |
| 30 | Iterator<MACAddress> hit = vNet.hosts.iterator(); |
| 31 | while (hit.hasNext()) |
| 32 | jGen.writeString(hit.next().toString()); |
| 33 | jGen.writeEndArray(); |
| 34 | |
| 35 | jGen.writeEndObject(); |
| 36 | } |
| 37 | |
| 38 | } |