RFR: 8367007: javadoc generation of JavaFX docs fails after fix for JDK-8350920
Hannes Wallnöfer
hannesw at openjdk.org
Wed Sep 10 13:46:11 UTC 2025
On Wed, 10 Sep 2025 09:58:20 GMT, Francesco Andreuzzi <duke at openjdk.org> wrote:
>> Please review a change to fix a regression when documenting inherited JavaFX property members after [JDK-8350920](https://bugs.openjdk.org/browse/JDK-8350920). The wrong `PropertyHelper` instance was used to initialize synthetic doc comments on property members, leading to potentially missing comments.
>>
>> Since using the correct `PropertyHelper` instance would have led to property info being computed multiple times (previously it was only needed in `ClassWriter`), I added caching of `PropertyHelper` instances in the enclosing `PropertyUtils` instance. In the process I also removed some unnecessary fields from `PropertyHelper`, made the property member map lazily initialized, and cleaned up code and doc comments in `PropertyUtils` a bit.
>>
>> The test adds a new subclass to a property-holding class in `TestJavaFX` to make sure inherited property members are documented correctly and no warnings are issued for missing synthetic doc comments.
>
> src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/PropertyUtils.java line 215:
>
>> 213: */
>> 214: public static class PropertyHelper {
>> 215: private Map<Element, Element> classPropertiesMap = null;
>
> What's the added value of having this lazily initialized?
Most code bases don't use JavaFX properties at all, and since we're adding caching for these objects the idea is to not waste memory (even though it doesn't matter much).
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27168#discussion_r2336814281
More information about the javadoc-dev
mailing list