JavaClassRegistry.st
changeset 3623 cfae550eeda1
parent 3508 622620308fee
child 3627 5d22435da54d
equal deleted inserted replaced
3622:2b5c28231160 3623:cfae550eeda1
     1 "{ Encoding: utf8 }"
       
     2 
       
     3 "
     1 "
     4  COPYRIGHT (c) 1996-2015 by Claus Gittinger
     2  COPYRIGHT (c) 1996-2015 by Claus Gittinger
     5 
     3 
     6  New code and modifications done at SWING Research Group [1]:
     4  New code and modifications done at SWING Research Group [1]:
     7 
     5 
   342                     reloadedClass ~~ oldClass ifTrue:[
   340                     reloadedClass ~~ oldClass ifTrue:[
   343                         "/ Remove old class from classloader...
   341                         "/ Remove old class from classloader...
   344                         self unregisterClassInClassLoader: oldClass.  
   342                         self unregisterClassInClassLoader: oldClass.  
   345                         "/ ...from reflection cache....
   343                         "/ ...from reflection cache....
   346                         JavaVM reflection removeJavaClassObjectForClass: oldClass.                 
   344                         JavaVM reflection removeJavaClassObjectForClass: oldClass.                 
       
   345                         "/ ...and finally mark it obsolete...
       
   346                         oldClass beObsolete.
   347 
   347 
   348                         classesPerLoader
   348                         classesPerLoader
   349                             at: newClass binaryName
   349                             at: newClass binaryName
   350                             put: reloadedClass.
   350                             put: reloadedClass.
   351                         self registerClassInClassLoader: reloadedClass.  
   351                         self registerClassInClassLoader: reloadedClass.  
   381        JavaCompiler recompileErroneousClassesReferringTo: newClass ignoring: newClass.
   381        JavaCompiler recompileErroneousClassesReferringTo: newClass ignoring: newClass.
   382     ].
   382     ].
   383 
   383 
   384     "Created: / 23-10-2011 / 11:53:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   384     "Created: / 23-10-2011 / 11:53:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   385     "Modified: / 02-11-2011 / 18:40:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
   385     "Modified: / 02-11-2011 / 18:40:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
   386     "Modified: / 15-08-2014 / 15:19:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   386     "Modified: / 19-09-2016 / 16:54:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   387 !
   387 !
   388 
   388 
   389 registerClasses: classes
   389 registerClasses: classes
   390     classes do:[:cls|self registerClass: cls].
   390     classes do:[:cls|self registerClass: cls].
   391 
   391 
   638 version_CVS
   638 version_CVS
   639     ^ '$Header: /cvs/stx/stx/libjava/JavaClassRegistry.st,v 1.8 2015-03-20 12:07:59 vrany Exp $'
   639     ^ '$Header: /cvs/stx/stx/libjava/JavaClassRegistry.st,v 1.8 2015-03-20 12:07:59 vrany Exp $'
   640 !
   640 !
   641 
   641 
   642 version_SVN
   642 version_SVN
   643     ^ '§Id§'
   643     ^ '§Id§'
   644 ! !
   644 ! !
   645 
   645