PageRenderTime 25ms CodeModel.GetById 0ms RepoModel.GetById 0ms app.codeStats 0ms

/jEdit/tags/jedit-4-5-pre1/org/gjt/sp/jedit/bsh/commands/reloadClasses.bsh

#
Unknown | 55 lines | 45 code | 10 blank | 0 comment | 0 complexity | c8c392531885cb461e778c7a10a8f264 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. /**
  2. Reload the specified class, package name, or all classes if no name is
  3. given. e.g.
  4. <p>
  5. <pre>
  6. reloadClasses();
  7. reloadClasses("mypackage.*");
  8. reloadClasses(".*") // reload unpackaged classes
  9. reloadClasses("mypackage.MyClass")
  10. </pre>
  11. <p>
  12. See "Class Path Management"
  13. @method void reloadClasses( [ package name ] )
  14. */
  15. bsh.help.reloadClasses=
  16. "usage: reloadClasses( String class | String package | String [] classes )";
  17. import org.gjt.sp.jedit.bsh.ClassPathException;
  18. void reloadClasses( item )
  19. {
  20. this.bcm = this.caller.namespace.getClassManager();
  21. try {
  22. if ( item instanceof String [] )
  23. bcm.reloadClasses( item );
  24. else {
  25. this.name = item;
  26. if ( name.endsWith(".*" ) ) {
  27. if ( name.equals(".*" ) )
  28. this.pack = "<unpackaged>";
  29. else
  30. this.pack = name.substring( 0, name.length()-2 );
  31. bcm.reloadPackage( pack );
  32. } else
  33. bcm.reloadClasses( new String[] { name } );
  34. }
  35. } catch ( ClassPathException e ) {
  36. error( e.getMessage() );
  37. }
  38. }
  39. /**
  40. Reload all classes
  41. */
  42. void reloadClasses()
  43. {
  44. this.caller.namespace.getClassManager().reloadAllClasses();
  45. }