Example #1
0
 private boolean isClasspathBroken(JavaProject jProj, boolean tryRepair) throws CoreException {
   IMarker[] markers =
       jProj
           .getProject()
           .findMarkers(IJavaModelMarker.BUILDPATH_PROBLEM_MARKER, false, IResource.DEPTH_ZERO);
   for (int i = 0, l = markers.length; i < l; i++) {
     if (markers[i].getAttribute(IMarker.SEVERITY, -1) == IMarker.SEVERITY_ERROR) {
       if (tryRepair) {
         Object code = markers[i].getAttribute(IJavaModelMarker.ID);
         if (code instanceof Integer
             && ((Integer) code)
                 == IJavaModelStatusConstants.CP_INVALID_EXTERNAL_ANNOTATION_PATH) {
           new ClasspathValidation(jProj).validate();
           return isClasspathBroken(jProj, false);
         }
       }
       return true;
     }
   }
   return false;
 }