JavaConstantPool.st
branchdevelopment
changeset 2817 96f3e2254489
parent 2757 66f842986836
child 2976 a384a02381c0
--- a/JavaConstantPool.st	Tue Oct 08 14:08:31 2013 +0100
+++ b/JavaConstantPool.st	Tue Oct 08 19:02:01 2013 +0200
@@ -22,7 +22,7 @@
 
 Array variableSubclass:#JavaConstantPool
 	instanceVariableNames:'owner'
-	classVariableNames:'ConstantPools'
+	classVariableNames:''
 	poolDictionaries:''
 	category:'Languages-Java-Reader-Support'
 !
@@ -53,35 +53,19 @@
 "
 ! !
 
-!JavaConstantPool class methodsFor:'accessing'!
-
-allConstantPools
-    "linked list of all constant pools in system"
-    ^ ConstantPools.
-
-    "Created: / 08-04-2011 / 16:53:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
-    "Modified: / 09-04-2011 / 09:24:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-allConstantPools: anOorderedCollection 
-    "linked list of all constant pools in system"
-    
-    ConstantPools := anOorderedCollection.
-
-    "Created: / 08-04-2011 / 17:07:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
-    "Modified: / 09-04-2011 / 09:24:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 11-04-2011 / 18:47:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
-! !
-
 !JavaConstantPool class methodsFor:'special'!
 
 invalidateForClass: internalJavaClassName 
     "Go over all constant pools and call invalidateForClass on all 
      references. (usable when given class was unloaded etc)"
-    ConstantPools do: [:each | each invalidateForClass: internalJavaClassName].
+    JavaVM registry classesDo: [ :eachClass | 
+        eachClass versionsArray do: [ :eachVersion | 
+            eachVersion constantPool invalidateForClass: internalJavaClassName.
+        ].
+    ].
 
     "Created: / 08-04-2011 / 16:52:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
-    "Modified: / 02-10-2013 / 21:05:44 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
+    "Modified (format): / 08-10-2013 / 18:43:59 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
 ! !
 
 !JavaConstantPool methodsFor:'accessing'!