I have realized that it is of crucial importance to get this scheme to work with a class’ java.lang.Class
object, because that is what static synchronized methods use for synchronization. However, like I said before, I can probably overload the $$$getObjectID$$$
method for java.lang.Class
and somehow use the class index that I’m generating for the method database.
The first problem is that I need to distinguish a class index from a normal object ID. I can probably do that by simply negating them and subtracting one: -1 is the code for an unavailable object ID, so class index 1 would correspond to object ID -2, and so on.
Right now, I don’t yet know how to even get to that class index, though. And I don’t know if there’s a difference between a class’ Class
object, like Integer.class
or one that gets created later for reflection.
Much to ponder, but at progress at last/least.