RFR: 8273581: Change the mechanism by which JDK loads the platform-specific FontManager class [v6]
Alexander Scherbatiy
alexsch at openjdk.java.net
Mon Sep 20 11:26:13 UTC 2021
> FontManagerFactory class uses reflection to load platform specific FontManager classes from "sun.font.fontmanager" property.
>
> Fix proposes creating FontManager platform specific classes directly in the similar way as it has been already done for GraphicsEnvironment and AWT Toolkit ([JDK-8130266](https://bugs.openjdk.java.net/browse/JDK-8130266) and [JDK-8212700](https://bugs.openjdk.java.net/browse/JDK-8212700)).
>
> FontManager is internal jdk class. It is placed in `sun.font` package and java modularization encapsulates FontManager from subclassing and using by a user.
>
> The fix reuses PlatformGraphicsInfo to create FontManager platform specific classes. May be FontManager creation code needs to be placed in its own info classes.
Alexander Scherbatiy has updated the pull request incrementally with two additional commits since the last revision:
- Use Double-check idiom for lazy initialization of instance fields with local variable
- Remove unnecessary explicit initialization of volatile variable
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/5517/files
- new: https://git.openjdk.java.net/jdk/pull/5517/files/91109b34..d965a1bc
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=5517&range=05
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=5517&range=04-05
Stats: 7 lines in 1 file changed: 2 ins; 0 del; 5 mod
Patch: https://git.openjdk.java.net/jdk/pull/5517.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/5517/head:pull/5517
PR: https://git.openjdk.java.net/jdk/pull/5517
More information about the client-libs-dev
mailing list