> what is the sentence regarding the @ConstructorProperties ?

As far as I understand the responses from Everett and Ignasi, we can either:

* use the JSON field names (zoneName and zoneState, I guess) as the constructor property names and then drop the annotation **or**
* use "nice" constructor property names (name and state) and keep the annotation as-is to help the deserializer. Not sure if that blows up GSON because the getters and setters would then be `getName` and `getState` rather than `getZoneName` and `getZoneState`

I'm wondering whether there's a third option

* use the JSON field names as constructor property names but use "nice" names for the instance variables. This would suffer from the same problem as option 2 above

The latter option would be my preferred choice, if it works, otherwise we're left with option 1.

@nacx Any comment on that? And thanks to you and @everett-toews for explaining - learned something new again today!