JavaClass parsedClass = getNextNestedClass(); if ( parsedClass != null )
JavaClass parsedClass = getNextNestedClass(); if (parsedClass != null) return parsedClass;  while (entries.hasMoreElements()) { if (Thread.interrupted()) throw new InterruptedException(); ZipEntry entry = (ZipEntry) entries.nextElement(); String name = entry.getName(); if (name.endsWith(".class")) { try { parsedClass = parseClass(fileName, zipFile.getInputStream(entry), name); break; } catch (ClassFormatException e) { throw new ClassFormatException("Invalid class file format for " + fileName + ":" + name + ": " + e.getMessage()); } } else if (name.endsWith(".jar") || name.endsWith(".zip")) { setZipStream(new ZipInputStream(zipFile.getInputStream(entry)), name); parsedClass = getNextNestedClass(); if (parsedClass != null) { break; } } else if (name.endsWith(".java")) containsSourceFiles = true;  }
	public JavaClass getNextClass() throws IOException, InterruptedException {		JavaClass parsedClass = getNextNestedClass();		if ( parsedClass != null )			return parsedClass;		while (entries.hasMoreElements()) {			if (Thread.interrupted()) throw new InterruptedException();			ZipEntry entry = (ZipEntry) entries.nextElement();			String name = entry.getName();			if (name.endsWith(".class")) {				try {					parsedClass = parseClass(fileName, zipFile.getInputStream(entry), name);					break;				} catch (ClassFormatException e) {					throw new ClassFormatException("Invalid class file format for " +						fileName + ":" + name + ": " + e.getMessage());				}			} else if ( name.endsWith(".jar") || name.endsWith( ".zip" ) ) {				setZipStream(new ZipInputStream(zipFile.getInputStream(entry)), name );				parsedClass = getNextNestedClass();				if ( parsedClass != null ) {					break;				}			} else if (name.endsWith(".java"))				containsSourceFiles = true;		}        	return parsedClass;	}