Assumes method `getId` - no go. Doesn't the class metadata provide you a way to handle this nicely?