private void forEach(@NotNull Consumer<? super ProjectViewNodeDecorator> consumer) {
    if (myProject == null || myProject.isDisposed()) return; // empty or disposed
    for (ProjectViewNodeDecorator decorator : EP.getExtensions(myProject)) {
      try {
        consumer.accept(decorator);
      }
      catch (IndexNotReadyException exception) {
        throw new ProcessCanceledException(exception);
      }
      catch (ProcessCanceledException exception) {
        throw exception;
      }
      catch (Exception exception) {
        LOG.warn("unexpected error in " + decorator, exception);
      }
    }
  }
private void forEach(@NotNull Consumer<? super ProjectViewNodeDecorator> consumer)