Skip to content

Commit ceabcf9

Browse files
committed
quantum: Ignore missing properties on deserialization
Some API extensions add properties to the entities. When Jackson sees these properties it tries to set them on the entity, but since they are not modelled it fails. Added a Jackson annotation to ignore such cases, thus API extensions that aren't modelled yet will not cause an exception in the client. Signed-off-by: Mike Kolesnik <mkolesni@redhat.com>
1 parent b530f70 commit ceabcf9

File tree

3 files changed

+6
-0
lines changed

3 files changed

+6
-0
lines changed

quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,12 @@
33
import java.io.Serializable;
44
import java.util.List;
55

6+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
67
import org.codehaus.jackson.annotate.JsonProperty;
78
import org.codehaus.jackson.map.annotate.JsonRootName;
89

910
@JsonRootName("network")
11+
@JsonIgnoreProperties(ignoreUnknown = true)
1012
public class Network implements Serializable{
1113

1214
private String status;

quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,12 @@
33
import java.io.Serializable;
44
import java.util.List;
55

6+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
67
import org.codehaus.jackson.annotate.JsonProperty;
78
import org.codehaus.jackson.map.annotate.JsonRootName;
89

910
@JsonRootName("port")
11+
@JsonIgnoreProperties(ignoreUnknown = true)
1012
public class Port implements Serializable {
1113

1214
public static final class Ip implements Serializable {

quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@
44
import java.util.List;
55

66
import org.codehaus.jackson.annotate.JsonCreator;
7+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
78
import org.codehaus.jackson.annotate.JsonProperty;
89
import org.codehaus.jackson.annotate.JsonValue;
910
import org.codehaus.jackson.map.annotate.JsonRootName;
1011

1112
@JsonRootName("subnet")
13+
@JsonIgnoreProperties(ignoreUnknown = true)
1214
public class Subnet implements Serializable{
1315

1416
private String name;

0 commit comments

Comments
 (0)