DERBY-623-1a.diff' is a patch changing BaseMonitor to use privileged blocks for reading system properties and also removing the workaround permissions granted in 'derby_tests.policy'.
Reading of specific properties are done with 'PropertyUtil.getSystemProperty()'.
Besides general feedback, I would like feedback on the following issues:
1) I have not separated reading all system properties (System.getProperties) into its own method, because this is done only here (and one place in testing code). It is also something we should in general not do. Further, keeping it inside the sanity block removes it in insane builds.
2) Should the swallowed exception be logged somewhere?
3) Is the order of the 'startServices' calls important? If not, I would move the call inside the sanity block to the end. I also removed the call for insane builds, since the variable passed in is only set for sane builds.
The patch is a mix of my own work and the patch I got by Rick Hillegas on derby-dev (subject 'Security manager problems with Class.forName()').