private List<Root> getRoots() {
      if (!model.invoker.isValidThread()) {
        LOG.error(new IllegalStateException(Thread.currentThread().getName()));
      }
      List<VirtualFile> files = roots;
      if (files == null) files = getSystemRoots();
      if (files.isEmpty()) return Collections.emptyList();
      return ContainerUtil.map(files, file -> new Root(this, file));
    }
private List<Root> getRoots()