Very java-ish, it's have been easier to work with `groovy.lang.MetaBeanProperty`, but it's OK.