public List getExecutionSummary()

in data-index/data-index-graphql/src/main/java/org/kie/kogito/index/graphql/AbstractGraphQLSchemaManager.java [191:219]


    public List<String> getExecutionSummary(DataFetchingEnvironment env) {
        ProcessInstance pi = env.getSource();
        List<String> summary = new ArrayList<>();
        List<NodeInstance> nodes = pi.getNodes();
        nodes.sort((u, v) -> u.getEnter().compareTo(v.getEnter()));
        ListIterator<NodeInstance> iter = nodes.listIterator();
        summary.add(String.format(START_MESSAGE, pi.getStart()));
        while (iter.hasNext()) {
            NodeInstance item = iter.next();
            if (Boolean.TRUE.equals(item.isRetrigger())) {
                summary.add(String.format(RETRIGGERED_MESSAGE, item.getEnter()));
            }
            if (item.getErrorMessage() != null) {
                summary.add(String.format(FAILED_MESSAGE, item.getErrorMessage(), item.getEnter()));
            }
        }
        if (pi.getState() == KogitoProcessInstance.STATE_ACTIVE) {
            while (iter.hasPrevious()) {
                NodeInstance last = iter.previous();
                if (last.getName() != null && last.getExit() == null) {
                    summary.add(String.format(WAITING_MESSAGE, last.getName(), last.getEnter()));
                }
                break;
            }
        } else if (pi.getState() == KogitoProcessInstance.STATE_COMPLETED) {
            summary.add(String.format(COMPLETED_MESSAGE, pi.getEnd()));
        }
        return summary;
    }