public void addCompilationUnit(CompilationUnit compilationUnit) { String compilationUnitTypeSourceName = compilationUnit.getTypeName(); compilationUnitsByTypeName.put(compilationUnitTypeSourceName, compilationUnit); compilationUnitTypeNames.add(compilationUnitTypeSourceName); Collection<CompiledClass> compiledClasses = compilationUnit.getCompiledClasses(); for (CompiledClass compiledClass : compiledClasses) { String sourceName = compiledClass.getSourceName(); String binaryName = InternalName.toBinaryName(compiledClass.getInternalName()); nestedSourceNamesByCompilationUnitName.put(compilationUnitTypeSourceName, sourceName); nestedBinaryNamesByCompilationUnitName.put(compilationUnitTypeSourceName, binaryName); compilationUnitNamesByNestedSourceName.put(sourceName, compilationUnitTypeSourceName); compilationUnitNamesByNestedBinaryName.put(binaryName, compilationUnitTypeSourceName); } }