@Override
    public void dirtyUnder(VirtualFile file) {
      if (file == null) return;
      synchronized (myLock) {
        myDirtyFiles.add(file);
      }
      scheduleUpdate();
    }
@Override
    public void dirtyUnder(VirtualFile file)