public final String export()

in buildChainExport-server/src/main/java/org/jetbrains/teamcity/buildChainExport/formats/PlainTextFormat.java [13:37]


  public final String export(@NotNull GraphNode startFrom) {
    StringBuilder result = new StringBuilder();

    result.append(prefix(startFrom));

    Set<GraphNode> processed = new HashSet<GraphNode>();

    Queue<GraphNode> toProcess = new LinkedList<GraphNode>();
    toProcess.add(startFrom);

    while (!toProcess.isEmpty()) {
      GraphNode promo = toProcess.poll();
      for (GraphNode dep: promo.getChildren()) {
        if (!processed.contains(dep)) {
          toProcess.add(dep);
        }

        result.append(edge(promo, dep, processed));
      }
    }

    result.append(suffix(startFrom));

    return result.toString();
  }