package org.infinispan.security.actions; import java.security.PrivilegedAction; /** * SetThreadContextClassLoaderAction. * * @author Tristan Tarrant * @since 7.0 */ public class SetThreadContextClassLoaderAction implements PrivilegedAction<ClassLoader> { private final ClassLoader classLoader; public SetThreadContextClassLoaderAction(ClassLoader classLoader) { this.classLoader = classLoader; } public SetThreadContextClassLoaderAction(Class<?> klass) { this.classLoader = klass.getClassLoader(); } @Override public ClassLoader run() { ClassLoader old = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(classLoader); return old; } }