Description
Use Java 9 modules to simplify code and improve JDO security.
The deprecation of the Java securityManager in Java 18 was handled in JDO-808 by adding a class LegacyJava as well as numerous doPrivileged() in the JDO API.
Using Java 9 modules we could:
- remove the code duplication
- better protect the LegacyJava class (it should be safe, but it is a manually implemented security feature, which is never good)
Alternative / Reason why we might NOT do it:
- The rationale for removing the SecurityManager is that it does not protect against a real world attach vector. Using this argument we could simply remove LegacyJava and all associated classes and code.