Package org.lwjgl.util.mapped

# Class MappedObjectClassLoader

java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.lwjgl.util.mapped.MappedObjectClassLoader

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

public class MappedObjectClassLoader extends 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

Modifier and Type
Method
Description
`static boolean`
`fork(Class<?> mainClass, String[] args)`
Forks the specified class containing a main method, passing the specified arguments.
`protected Class<?>`
`loadClass(String name, boolean resolve)`
`protected 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 Details

### fork

public static boolean fork(Class<?> mainClass, String[] args)
Forks the specified class containing a main method, passing the specified arguments. See
invalid reference

    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 Class<?> loadMappedObject() throws ClassNotFoundException

Throws:
  `ClassNotFoundException`

### loadClass

protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException

Overrides:
  `loadClass` in class `ClassLoader`
Throws:
  `ClassNotFoundException`