catch (JavaModelException e) { e.printStackTrace();
if (qualifiedClassName == null) { return null; } if (DEBUG) { System.out.println( "Looking up class: " + packageName + ", " + qualifiedClassName); }  int lastDollar = Math.max(qualifiedClassName.lastIndexOf('$'), qualifiedClassName.lastIndexOf('+')); boolean isInnerClass = lastDollar > 0;   IType type = null;  if(primarySourceLineAnnotation == null && isInnerClass){  String innerName = qualifiedClassName.substring(lastDollar + 1); String shortQualifiedClassName = qualifiedClassName.substring(0, lastDollar); type = getJavaProject().findType(shortQualifiedClassName); completeInnerClassInfo(qualifiedClassName, innerName, type, bug); } else { type = getJavaProject().findType(qualifiedClassName); } if (type != null) { return type.getUnderlyingResource();
	private IResource getUnderlyingResource(BugInstance bug) {		try {			SourceLineAnnotation primarySourceLineAnnotation =				bug.getPrimarySourceLineAnnotation();			if (primarySourceLineAnnotation != null) {				String packageName = primarySourceLineAnnotation.getPackageName();				String qualifiedClassName =					primarySourceLineAnnotation.getClassName();				if (DEBUG) {					System.out.println(						"Looking up class: "							+ packageName							+ ", "							+ qualifiedClassName);				}				IType type = getJavaProject().findType(qualifiedClassName);				if (type != null) {					IResource res = type.getUnderlyingResource();					if (res != null) {						return res;					}				}			}		}		catch (JavaModelException e) {			e.printStackTrace();		}		return null;	}