What happens if the project gets deleted/closed while this job is running. Is your code robust against it.

The solution to the above is usually either having a try..catch, or calling ``setRule`` on the job (similar to what we do here https://github.com/scala-ide/scala-ide/blob/master/org.scala-ide.sdt.core/src/scala/tools/eclipse/buildmanager/ProjectsCleanJob.scala#L37 - you could use a ``modifyRule``). At the moment I'm not sure which one is best. I'm wondering if it makes sense to prevent the user to delete/close a project because we are indexing it. On the other hand, setting a rule makes the code robust and it's clean. Considering indexing takes not much time, my current suggestion would be to try for setting a rule.