Are you sure that the above three fields don't need a synchronization policy? Basically, are you expecting that the thread running the ``start`` method is the same as the one calling ``createIndexJob`` and ``indexLocationForProject``? I think not, hence you need a synchronization policy (and you need ``SearchPlugin`` to be thread-safe, as its instance it is going to be accessed concurrently by different thread ).

When you reason about this, think if you only need to protect yourself against visibility issues, or you need a stronger synchronization policy (before getting to the code, would be good if you share your thoughts ;-))