* ``ResourcesPlugin.getWorkspace()`` can throw a ``IllegalStateException``, which I think you should catch and maybe print a debug message.
* Can the projects returned by ``getProjects`` contain ``null`` values?