I finished my merge into PikaCode (https://pikacode.com/groboclown/java4k-launcher/), and added the capability to look at the different entries over the years. I included progress bars and separated out the work for downloads into more reasonable places. It still has a large amount of work to make it look pretty, and I know my use of SwingWorker can be better done, but the basics are there.
Somewhere along the line I introduced a bad bug where the loaded applets are returning “null” from a getGraphics() call. I’m assuming I’m just not parenting it correctly. This is part of the reason the applets weren’t visible - they were crashing! UPDATE: I found the source of the issue and fixed it.
I’d like to see either caching of entries, or (possibly additionally) allowing for a zip download that includes all the previous entries to limit the amount of downloads we put on the java4k web site.
As to the other questions:
There’s some options we can do here, like have a debug property that, if set and the launcher.dir isn’t set, then we just don’t install a security manager.
Yes, and the nice part is, yours works! Hopefully the code I pulled in for this can be easily swapped out with a feed reader if we get to that point.
It’s for security reasons, and being able to force a badly running applet to die. Applets are supposed to not be able to create new top-level thread groups, so that the running tool can just kill all the threads running in that thread group. It’s also used for ensuring that the applet is running in the right security context. I also have all the thread stuff there so that we make sure that each of those different tasks runs under that thread group.