allClassSet.add(classDescriptor); if (discoveredCodeBase.getCodeBase().isApplicationCodeBase()) { appClassList.add(classDescriptor); }
appClassSet.add(classDescriptor); appClassList.add(classDescriptor);
	public void build(IClassPath classPath) throws ResourceNotFoundException, IOException, InterruptedException {		// Discover all directly and indirectly referenced codebases		processWorkList(classPath, projectWorkList);		processWorkList(classPath, buildSystemCodebaseList());				// Add all discovered codebases to the classpath		for (DiscoveredCodeBase discoveredCodeBase : discoveredCodeBaseList) {			classPath.addCodeBase(discoveredCodeBase.getCodeBase());		}				// Build collections of		// - all application classes		// - all classes period		// Also, add resource name -> codebase entry mappings for all classes.		for (DiscoveredCodeBase discoveredCodeBase : discoveredCodeBaseList) {		codeBaseEntryLoop:			for (ICodeBaseIterator i = discoveredCodeBase.iterator(); i.hasNext(); ) {				ICodeBaseEntry entry = i.next();				if (!ClassDescriptor.isClassResource(entry.getResourceName())) {					continue;				}								ClassDescriptor classDescriptor =					ClassDescriptor.fromResourceName(entry.getResourceName());								if (allClassSet.contains(classDescriptor)) {					// An earlier entry takes precedence over this class					continue codeBaseEntryLoop;				}								allClassSet.add(classDescriptor);				if (discoveredCodeBase.getCodeBase().isApplicationCodeBase()) {					appClassList.add(classDescriptor);				}								classPath.mapResourceNameToCodeBaseEntry(entry.getResourceName(), entry);			}		}				if (DEBUG) {			System.out.println("Classpath:");			dumpCodeBaseList(classPath.appCodeBaseIterator(), "Application codebases");			dumpCodeBaseList(classPath.auxCodeBaseIterator(), "Auxiliary codebases");		}	}