Details
-
Sub-task
-
Status: Resolved
-
Medium
-
Resolution: Done
-
None
Description
mdsal-binding-java-api-generator's InterfaceTemplate needs to generate a
interface Foo extends DataObject { static int bindingHashCode(final @NonNull Foo obj) { // ... } }
method from the contents of generated builder implementation objects. Those need to defer to bindingHashCode() for the actual computation. The method needs to be static, as for Augmentable interfaces it needs a different signature:
interface Foo extends DataObject, Augmentatable<Foo> { static <T$$ extends Foo & AugmentationHolder<Foo>> int bindingHashCode(final @NonNull T$$ obj) { // ... } }
Attachments
| # | Subject | Branch | Project | Status | CR | V |
|---|---|---|---|---|---|---|
| 84205,27 | Generate bindingHashCode() and use it in generated implementations | master | mdsal | Status: MERGED | +2 | +1 |
| 91454,14 | Add tests for generateBindingHashCode() | master | mdsal | Status: MERGED | +2 | +1 |
| 91494,5 | Skip bindingHashCode() generation on properties' absence | master | mdsal | Status: MERGED | +2 | +1 |