void onOneProjectReplicationDone()

in src/main/java/com/googlesource/gerrit/plugins/replication/pull/FetchResultProcessing.java [85:130]


    void onOneProjectReplicationDone(
        String project,
        String ref,
        URIish uri,
        ReplicationState.RefFetchResult status,
        RefUpdate.Result refUpdateResult) {
      StringBuilder sb = new StringBuilder();
      sb.append("Replicate ");
      sb.append(project);
      sb.append(" ref ");
      sb.append(ref);
      sb.append(" from ");
      sb.append(resolveNodeName(uri));
      sb.append(", ");
      switch (status) {
        case SUCCEEDED:
          sb.append("Succeeded!");
          break;
        case FAILED:
          sb.append("FAILED!");
          hasError.compareAndSet(false, true);
          break;
        case NOT_ATTEMPTED:
          sb.append("NOT ATTEMPTED!");
          break;
        default:
          sb.append("UNKNOWN RESULT!");
          break;
      }
      if (refUpdateResult != null) {
        sb.append(" (");
        sb.append(refUpdateResult.toString());
        sb.append(")");
      }
      writeStdOut(sb.toString());
      try {
        Context.setLocalEvent(true);
        dispatcher.postEvent(
            new FetchRefReplicatedEvent(project, ref, uri, status, refUpdateResult));
      } catch (PermissionBackendException e) {
        logger.atSevere().withCause(e).log(
            "Cannot post event for ref '%s', project %s", ref, project);
      } finally {
        Context.unsetLocalEvent();
      }
    }