Class SingleServingGosuClassLoader

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Set<java.lang.String> _classes  
      private GosuClassLoader _parent  
      (package private) static java.util.Map<java.lang.String,​java.lang.Class> CACHE  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) java.lang.Class _defineClass​(ICompilableType gsClass)  
      void assignParent​(java.lang.ClassLoader classLoader)  
      static void clearCache()  
      static void clearCache​(java.lang.String gosuClassName)  
      private byte[] compileClass​(ICompilableType type, boolean debug)  
      java.lang.Class defineClass​(java.lang.String name, byte[] bytes)  
      void dumpAllClasses()  
      void evictLoader​(java.lang.String packageName)  
      java.lang.Class<?> findClass​(java.lang.String strName)  
      java.lang.ClassLoader getActualLoader()  
      byte[] getBytes​(ICompilableType gsClass)  
      static java.lang.Class getCached​(ICompilableType gsClass)  
      IJavaType getFunctionClassForArity​(boolean hasReturn, int length)  
      boolean isDisposed()  
      protected java.lang.Class<?> loadClass​(java.lang.String name, boolean resolve)  
      private boolean shouldCache​(ICompilableType gsClass)  
      protected void unload​(java.lang.String gosuClassName)  
      boolean waitForLoaderToUnload​(java.lang.String packageName, long millisToWait)  
      • Methods inherited from class java.lang.ClassLoader

        clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • CACHE

        static final java.util.Map<java.lang.String,​java.lang.Class> CACHE
      • _classes

        private java.util.Set<java.lang.String> _classes
    • Constructor Detail

      • SingleServingGosuClassLoader

        SingleServingGosuClassLoader()
      • SingleServingGosuClassLoader

        SingleServingGosuClassLoader​(GosuClassLoader parent)
    • Method Detail

      • getCached

        public static java.lang.Class getCached​(ICompilableType gsClass)
      • clearCache

        public static void clearCache()
      • clearCache

        public static void clearCache​(java.lang.String gosuClassName)
      • findClass

        public java.lang.Class<?> findClass​(java.lang.String strName)
                                     throws java.lang.ClassNotFoundException
        Specified by:
        findClass in interface IGosuClassLoader
        Overrides:
        findClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException
      • unload

        protected void unload​(java.lang.String gosuClassName)
      • loadClass

        protected java.lang.Class<?> loadClass​(java.lang.String name,
                                               boolean resolve)
                                        throws java.lang.ClassNotFoundException
        Overrides:
        loadClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException
      • compileClass

        private byte[] compileClass​(ICompilableType type,
                                    boolean debug)
      • defineClass

        public java.lang.Class defineClass​(java.lang.String name,
                                           byte[] bytes)
        Specified by:
        defineClass in interface IGosuClassLoader
      • isDisposed

        public boolean isDisposed()