Class MappedObjectClassLoader

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class MappedObjectClassLoader
    extends java.net.URLClassLoader
    This classloader is responsible for applying the bytecode transformation to mapped objects. The transformation can either be applied using a Java agent, or with the convenient fork(java.lang.Class<?>, java.lang.String[]) method.
    Author:
    Riven
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean fork​(java.lang.Class<?> mainClass, java.lang.String[] args)
      Forks the specified class containing a main method, passing the specified arguments.
      protected java.lang.Class<?> loadClass​(java.lang.String name, boolean resolve)  
      protected java.lang.Class<?> loadMappedObject()  
      • Methods inherited from class java.net.URLClassLoader

        addURL, close, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
      • Methods inherited from class java.security.SecureClassLoader

        defineClass, defineClass
      • Methods inherited from class java.lang.ClassLoader

        clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, 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
    • Method Detail

      • fork

        public static boolean fork​(java.lang.Class<?> mainClass,
                                   java.lang.String[] args)
        Forks the specified class containing a main method, passing the specified arguments. See org.lwjgl.test.mapped.TestMappedObject for example usage.
        Parameters:
        mainClass - the class containing the main method
        args - the arguments to pass
        Returns:
        true if the fork was successful.
      • loadMappedObject

        protected java.lang.Class<?> loadMappedObject()
                                               throws java.lang.ClassNotFoundException
        Throws:
        java.lang.ClassNotFoundException
      • 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