Package net.minestom.server.extras.selfmodification

# Class MinestomExtensionClassLoader

java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
net.minestom.server.extras.selfmodification.HierarchyClassLoader
net.minestom.server.extras.selfmodification.MinestomExtensionClassLoader

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

public class MinestomExtensionClassLoader extends HierarchyClassLoader

- ## Field Summary

  ### Fields inherited from class net.minestom.server.extras.selfmodification.HierarchyClassLoader

  `children, parents`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MinestomExtensionClassLoader(String name, URL[] urls, MinestomRootClassLoader root)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addURL(URL url)`
  `void`
  `close()`
  `protected void`
  `finalize()`
  Deprecated.
  `String`
  `getName()`
  `@NotNull Class<?>`
  `loadClass(@NotNull String name)`
  `protected @NotNull Class<?>`
  `loadClass(@NotNull String name, boolean resolve)`
  `@NotNull Class<?>`
  `loadClassAsChild(String name, boolean resolve)`
  Assumes the name is not null, nor it does represent a protected class.
  `String`
  `toString()`

  ### Methods inherited from class net.minestom.server.extras.selfmodification.HierarchyClassLoader

  `addChild, findLibrary, getResourceAsStreamWithChildren, getResourceAsURLWithChildren, removeChildInHierarchy`

  ### Methods inherited from class java.net.URLClassLoader

  `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, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners`

  ### Methods inherited from class java.lang.Object

  `clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### MinestomExtensionClassLoader

    public MinestomExtensionClassLoader(String name, URL[] urls, MinestomRootClassLoader root)

- ## Method Details

  - ### addURL

    public void addURL(URL url)
    Overrides:
      `addURL` in class `URLClassLoader`

  - ### close

    public void close() throws IOException
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Overrides:
      `close` in class `URLClassLoader`
    Throws:
      `IOException`

  - ### loadClass

    @NotNull public @NotNull Class<?> loadClass(@NotNull @NotNull String name) throws ClassNotFoundException
    Overrides:
      `loadClass` in class `ClassLoader`
    Throws:
      `ClassNotFoundException`

  - ### loadClass

    @NotNull protected @NotNull Class<?> loadClass(@NotNull @NotNull String name, boolean resolve) throws ClassNotFoundException
    Overrides:
      `loadClass` in class `ClassLoader`
    Throws:
      `ClassNotFoundException`

  - ### loadClassAsChild

    @NotNull public @NotNull Class<?> loadClassAsChild(String name, boolean resolve) throws ClassNotFoundException
    Assumes the name is not null, nor it does represent a protected class.
    Parameters:
      `name` -
    Returns:
      The loaded class
    Throws:
      `ClassNotFoundException` - if the class is not found inside this classloader

  - ### finalize

    @Deprecated @ScheduledForRemoval protected void finalize() throws Throwable
    Deprecated.
    Overrides:
      `finalize` in class `Object`
    Throws:
      `Throwable`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### getName

    public String getName()
    Overrides:
      `getName` in class `ClassLoader`