java/src/stx/libjava/groovy/GroovyClassLoader.java
author vranyj1
Thu, 15 Nov 2012 22:10:02 +0000
branchdirectory_structure_refactoring
changeset 1818 2e5ed72e7dfd
parent 1457 src/java/src/stx/libjava/groovy/GroovyClassLoader.java@fba314a596e8
child 2380 9195eccdcbd9
permissions -rw-r--r--
Directory structure refactoring (part 2)

package stx.libjava.groovy;

import java.security.AccessController;
import java.security.PrivilegedAction;

import org.codehaus.groovy.control.CompilationUnit;
import org.codehaus.groovy.control.SourceUnit;

public class GroovyClassLoader extends groovy.lang.GroovyClassLoader {

	protected ClassCollector createCollector(CompilationUnit unit, SourceUnit su) {
        InnerLoader loader = AccessController.doPrivileged(new PrivilegedAction<InnerLoader>() {
            public InnerLoader run() {
                return new InnerLoader(GroovyClassLoader.this);
            }
        });
        return new SystemClassCollector(loader, unit, su);
    }
	
	public static class SystemClassCollector extends groovy.lang.GroovyClassLoader.ClassCollector  {
		
		protected SystemClassCollector(InnerLoader cl, CompilationUnit unit, SourceUnit su) {
			super(cl, unit, su);
		}
		
		public native GroovyClassLoader getDefiningClassLoader();
				
	}	
}