@Override
  public void onEvent(Object o) throws Exception {
    if (!(o instanceof RepositoryEvent)) return;
    RepositoryEvent event = (RepositoryEvent)o;
    if (event.getArtifact() == null) {
      return;
    }

    MavenServerConsoleIndicator indicator = myIndicator;
    if (indicator == null) {
      return;
    }

    if (event.getType() == RepositoryEvent.EventType.ARTIFACT_DOWNLOADING) {
      String dependencyId = toString(event.getArtifact());
      indicator.startedDownload(MavenServerConsoleIndicator.ResolveType.DEPENDENCY, dependencyId);
      downloadedArtifacts.add(dependencyId);
    }
    else if (event.getType() == RepositoryEvent.EventType.ARTIFACT_RESOLVED) {
      String dependencyId = toString(event.getArtifact());
      if (downloadedArtifacts.remove(dependencyId)) {
        processResolvedArtifact(event, indicator, dependencyId);
      }
    }
  }
@Override
  public void onEvent(Object o)