RFR: 8355611: Get rid of SurfaceManagerFactory [v2]

Nikita Gubarkov ngubarkov at openjdk.org
Fri Apr 25 14:19:54 UTC 2025


> `SurfaceManagerFactory` just checks a given `GraphicsConfiguration` against multiple types via `instanceof`, it has 3 platform-specific implementations, which rely on an ugly injection process.
> 
> There is no reason to have this class at all, we could just let `GraphicsConfiguration` create a compatible `SurfaceManager` instead.
> 
> This would reduce coupling without having to collect all surface manager types in a single place (without real need to do so).
> And this would also remove dependency on the class initialization sequence by getting rid of the injection process.

Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision:

  fixup! 8355611: Get rid of SurfaceManagerFactory

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/24875/files
  - new: https://git.openjdk.org/jdk/pull/24875/files/1dd93bdf..c1e55120

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=24875&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24875&range=00-01

  Stats: 2 lines in 2 files changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/24875.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24875/head:pull/24875

PR: https://git.openjdk.org/jdk/pull/24875


More information about the client-libs-dev mailing list