Package org.eclipse.birt.core.framework.osgi

# Class OSGILauncher.ChildFirstURLClassLoader

java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.eclipse.birt.core.framework.URLClassLoader
org.eclipse.birt.core.framework.osgi.OSGILauncher.ChildFirstURLClassLoader

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

Enclosing class:
  `OSGILauncher`

protected static class OSGILauncher.ChildFirstURLClassLoader extends URLClassLoader
The ChildFirstURLClassLoader alters regular ClassLoader delegation and will check the URLs used in its initialization for matching classes before delegating to it's parent. Sometimes also referred to as a ParentLastClassLoader

## Constructor Summary

Constructors
Constructor
Description
`ChildFirstURLClassLoader(URL[] urls)`
`ChildFirstURLClassLoader(URL[] urls, ClassLoader parent)`

## Method Summary

Modifier and Type
Method
Description
`URL`
`getResource(String name)`
`protected Class<?>`
`loadClass(String name, boolean resolve)`

### Methods inherited from class org.eclipse.birt.core.framework.URLClassLoader

`addURL, close, decode, definePackage, findClass, findClass1, findResource, findResource1, findResources, findResources1, getURLs`

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

`definePackage, getPermissions, getResourceAsStream, 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, 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`

## Constructor Details

### ChildFirstURLClassLoader

public ChildFirstURLClassLoader(URL[] urls)

### ChildFirstURLClassLoader

public ChildFirstURLClassLoader(URL[] urls, ClassLoader parent)

## Method Details

### getResource

public URL getResource(String name)

Overrides:
  `getResource` in class `ClassLoader`

### loadClass

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

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