public void register(VirtualFile file) {
    if (file != null && !disposed.get()) {
      LOG.debug("add file to watch recursive=", recursive, ": ", file);
      Object watcher = watch(file, recursive);
      if (watcher != null) {
        synchronized (watchers) {
          watchers.add(watcher);
        }
      }
      synchronized (files) {
        files.add(file);
      }
      if (!paused.get()) schedule();
    }
  }
public void register(VirtualFile file)