<s> package org . eclipse . jdt . core . dom ; import org . eclipse . core . runtime . IProgressMonitor ; import org . eclipse . core . runtime . OperationCanceledException ; import org . eclipse . jdt . internal . compiler . batch . FileSystem ; import org . eclipse . jdt . internal . compiler . env . NameEnvironmentAnswer ; import org . eclipse . jdt . internal . compiler . problem . AbortCompilation ; import org . eclipse . jdt . internal . core . INameEnviromentWithProgress ; import org . eclipse . jdt . internal . core . NameLookup ; class NameEnviromentWithProgress extends FileSystem implements INameEnviromentWithProgress { IProgressMonitor monitor ; public NameEnviromentWithProgress ( Classpath [ ] paths , String [ ] initialFileNames , IProgressMonitor monitor ) { super ( paths , initialFileNames ) ; setMonitor ( monitor ) ; } private void checkCanceled ( ) { if ( this . monitor != null && this . monitor . isCanceled ( ) ) { if ( NameLookup . VERBOSE ) { System . out . println ( Thread . currentThread ( ) + "" ) ; } throw new AbortCompilation ( true , new OperationCanceledException ( ) ) ; } } public NameEnvironmentAnswer findType ( char [ ] typeName , char [ ] [ ] packageName ) { checkCanceled ( ) ; return super . findType ( typeName , packageName ) ; } public NameEnvironmentAnswer findType ( char [ ] [ ] compoundName ) { checkCanceled ( ) ; return super . findType ( compoundName ) ; } public boolean isPackage ( char [ ] [ ] compoundName , char [ ] packageName ) { checkCanceled ( ) ; return super . isPackage ( compoundName , packageName ) ; } public void setMonitor ( IProgressMonitor monitor ) { this . monitor = monitor ; } } </s>