- All Known Implementing Classes:
- JNLPClassLoader.SecurityDelegateImpl
- Enclosing class:
- JNLPClassLoader
public static interface JNLPClassLoader.SecurityDelegate
SecurityDelegate, in real usage, relies on having a "parent" JNLPClassLoader instance.
However, JNLPClassLoaders are very large, heavyweight, difficult-to-mock objects, which
means that unit testing on anything that uses a SecurityDelegate can become very difficult.
For example, JarCertVerifier is designed separated from the ClassLoader so it can be tested
in isolation. However, JCV needs some sort of access back to JNLPClassLoader instances to
be able to invoke setRunInSandbox(). The SecurityDelegate handles this, allowing JCV to be
tested without instantiating JNLPClassLoaders, by creating a fake SecurityDelegate that does
not require one.