package org.opennaas.extensions.opendaylight.vtn.protocol.client.serializers.json.deserialize; import java.io.IOException; import org.codehaus.jackson.JsonParser; import org.codehaus.jackson.JsonProcessingException; import org.codehaus.jackson.JsonToken; import org.codehaus.jackson.map.DeserializationContext; import org.codehaus.jackson.map.JsonDeserializer; import org.opennaas.extensions.opendaylight.vtn.model.OpenDaylightvBridge; public class vBridgeJSONDeserializer extends JsonDeserializer<OpenDaylightvBridge> { /* {"vbridges":[{"vbr_name":"vbr1"},{"vbr_name":"vbr2"}]} */ @Override public OpenDaylightvBridge deserialize(JsonParser jp, DeserializationContext dc) throws IOException, JsonProcessingException { OpenDaylightvBridge vbr = new OpenDaylightvBridge(); JsonToken current; current = jp.nextToken(); while (jp.nextToken() != JsonToken.END_OBJECT) { String fieldName = jp.getCurrentName(); if (fieldName.equals("vbridge")) { while (jp.nextToken() != JsonToken.END_OBJECT) { if (jp.getCurrentName().equals("controller_id")) { vbr.setController_id(jp.getText()); } if (jp.getCurrentName().equals("vbr_name")) { vbr.setVbr_name(jp.getText()); } if (jp.getCurrentName().equals("domain_id")) { vbr.setDomain_id(jp.getText()); } } } } return vbr; } }