@Override protected ClassLoader createProgramInvocationClassLoader() { return new WeakReferenceDelegatorClassLoader(mapReduceClassLoader); }
@Override public URL getResource(String name) { return ensureDelegateExists().getResource(name); }
@Override protected ClassLoader createProgramInvocationClassLoader() { return new WeakReferenceDelegatorClassLoader(mapReduceClassLoader); }
@Override public URL[] getURLs() { ClassLoader delegate = ensureDelegateExists(); if (delegate instanceof URLClassLoader) { return ((URLClassLoader) delegate).getURLs(); } return EMPTY_URLS; }
@Override protected ClassLoader createProgramInvocationClassLoader() { if (mapReduceClassLoader == null) { // This shouldn't happen. Just to prevent bug and be able to catch it in unit-test. throw new IllegalStateException("The MapReduceClassLoader is not yet set"); } return new WeakReferenceDelegatorClassLoader(mapReduceClassLoader); }
@Override public Enumeration<URL> getResources(String name) throws IOException { return ensureDelegateExists().getResources(name); }
@Override protected ClassLoader createProgramInvocationClassLoader() { if (mapReduceClassLoader == null) { // This shouldn't happen. Just to prevent bug and be able to catch it in unit-test. throw new IllegalStateException("The MapReduceClassLoader is not yet set"); } return new WeakReferenceDelegatorClassLoader(mapReduceClassLoader); }
@Override public URL[] getURLs() { ClassLoader delegate = ensureDelegateExists(); if (delegate instanceof URLClassLoader) { return ((URLClassLoader) delegate).getURLs(); } return EMPTY_URLS; }
public WeakReferenceDelegatorClassLoader(ClassLoader classLoader) { // Wrap the parent with a weak reference as well. super(EMPTY_URLS, classLoader.getParent() == null ? null : new WeakReferenceDelegatorClassLoader(classLoader.getParent())); this.delegate = new WeakReference<>(classLoader); }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { return ensureDelegateExists().loadClass(name); }
public WeakReferenceDelegatorClassLoader(ClassLoader classLoader) { // Wrap the parent with a weak reference as well. super(EMPTY_URLS, classLoader.getParent() == null ? null : new WeakReferenceDelegatorClassLoader(classLoader.getParent())); this.delegate = new WeakReference<>(classLoader); }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { return ensureDelegateExists().loadClass(name); }
@Override protected ClassLoader createProgramInvocationClassLoader() { sparkClassLoader = new SparkClassLoader(this); ClassLoader classLoader = new WeakReferenceDelegatorClassLoader(sparkClassLoader); hConf.setClassLoader(classLoader); return classLoader; }
@Override public Enumeration<URL> getResources(String name) throws IOException { return ensureDelegateExists().getResources(name); }
@Override protected ClassLoader createProgramInvocationClassLoader() { sparkClassLoader = new SparkClassLoader(this); ClassLoader classLoader = new WeakReferenceDelegatorClassLoader(sparkClassLoader); hConf.setClassLoader(classLoader); return classLoader; }
@Override public URL getResource(String name) { return ensureDelegateExists().getResource(name); }
@Override protected ClassLoader createProgramInvocationClassLoader() { sparkClassLoader = new SparkClassLoader(this); ClassLoader classLoader = new WeakReferenceDelegatorClassLoader(sparkClassLoader); hConf.setClassLoader(classLoader); return classLoader; }
@Override public InputStream getResourceAsStream(String name) { return ensureDelegateExists().getResourceAsStream(name); }
public void run(Context context) throws IOException, InterruptedException { MapReduceClassLoader classLoader = MapReduceClassLoader.getFromConfiguration(context.getConfiguration()); ClassLoader weakReferenceClassLoader = new WeakReferenceDelegatorClassLoader(classLoader);
@Override public InputStream getResourceAsStream(String name) { return ensureDelegateExists().getResourceAsStream(name); }