[jdk16] RFR: JDK-8258002: Update "type" terminology in generated docs

Jonathan Gibbons jjg at openjdk.java.net
Tue Dec 15 15:56:11 UTC 2020


This is the bulk of the work to update javadoc to use certain terminology dependent on the source version in use. There will be a minor update when JDK-8247994 has been pushed. That will allow us to modify strings displayed by JavaScript Search.

The groups of terms being changed are:

* `Types` to `Classes and Interfaces`
* `Annotation Type` to `Annotation Interface`
* `Enum` to `Enum Class`

The new terminology will be used when the source version of the elements being documented is 16 or higher. This is the default behavior. The corollary is that the old terminology will be used when the `--source` or `--release` option is used to specify a version less than `16`.

In addition, the terminology for `Record` is being unconditionally changed to use `Record Class`. Since the feature was in preview before this release, there is no need to be able to generate the previous form.

Also, in the course of this work, it was noted that on the "Use" page for an annotation type/interface, it was incorrectly classified as a *class*, instead of *annotation interface*: that has been fixed.

Fundamentally, the change is managed at a very low level, by passing a _mapping function_ into `Resource.getText`. This allows high level code, `HtmlDoclet` in this case, to provide version-specific overrides of the resource key to be used. The avoids having to have version-specific checks at the point of use for each affected resource.

-------------

Commit messages:
 - remove adaptive terminology for records
 - add test
 - Remove obsolete properties and code
 - Version 2: release-specific terminology
 - JDK-8258002: Update "type" terminology in generated docs

Changes: https://git.openjdk.java.net/jdk16/pull/20/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk16&pr=20&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8258002
  Stats: 561 lines in 46 files changed: 322 ins; 45 del; 194 mod
  Patch: https://git.openjdk.java.net/jdk16/pull/20.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk16 pull/20/head:pull/20

PR: https://git.openjdk.java.net/jdk16/pull/20


More information about the javadoc-dev mailing list