Hi Stuart,

On 6/4/2018 9:52 PM, Stuart Marks wrote:


On 6/4/18 6:32 AM, Roger Riggs wrote:
Please review a change to make the values of java.home, user.home, user.dir, and user.name effectively read-only for internal use.  The values are cached during initialization and the
cached values are used.

Webrev:
http://cr.openjdk.java.net/~rriggs/webrev-static-property-8066709/

Issue:
   https://bugs.openjdk.java.net/browse/JDK-8066709

CSR:
   https://bugs.openjdk.java.net/browse/JDK-8204235

Hi Roger,

Overall I think the intent of the change is a good one, as is the reimplementation of internal uses of system properties to use an internal API instead.

I think it would be good to have an explicit initialization of the SystemProperty class (or whatever it ends up being called) instead of implicitly initializing via a static initializer. If the class is initialized too early, for some reason, things would go wrong.

That would be a no-op;  I want the values of the properties to be final statics which means they have to
be initialized by the static initializer.
Should there be an error, a warning, or assertion checking to make sure that none of the cached values are null? They should all be non-null, right?
Yes, null will be a fatal InternalError.

Thanks, Roger


s'marks

Reply via email to