private ObjectNode getProcessJson()

in data-index/data-index-service/data-index-service-common/src/main/java/org/kie/kogito/index/service/json/ProcessInstanceMetaMapper.java [73:117]


    private ObjectNode getProcessJson(ProcessInstanceDataEvent<?> event) {
        ObjectNode json = getObjectMapper().createObjectNode();
        json.put(ID, event.getKogitoProcessInstanceId());
        json.put(PROCESS_ID, event.getKogitoProcessId());
        json.put(LAST_UPDATE, event.getTime() == null ? null : event.getTime().toInstant().toEpochMilli());

        if (!isNullOrEmpty(event.getKogitoRootProcessInstanceId())) {
            json.put("rootProcessInstanceId", event.getKogitoRootProcessInstanceId());
        }
        if (!isNullOrEmpty(event.getKogitoParentProcessInstanceId())) {
            json.put("parentProcessInstanceId", event.getKogitoParentProcessInstanceId());
        }
        if (!isNullOrEmpty(event.getKogitoRootProcessId())) {
            json.put("rootProcessId", event.getKogitoRootProcessId());
        }

        if (event.getSource() != null) {
            json.put("endpoint", event.getSource().toString());
        }

        if (event instanceof ProcessInstanceStateDataEvent) {
            ProcessInstanceStateDataEvent state = (ProcessInstanceStateDataEvent) event;

            json.put("state", state.getData().getState());
            json.put(PROCESS_NAME, state.getData().getProcessName());
            if (!isNullOrEmpty(state.getData().getBusinessKey())) {
                json.put("businessKey", state.getData().getBusinessKey());
            }
            if (state.getData().getEventType() != null && state.getData().getEventType() == 1) {
                json.put("start", state.getData().getEventDate().toInstant().toEpochMilli());
                if (!isNullOrEmpty(state.getData().getEventUser())) {
                    json.put("createdBy", state.getData().getEventUser());
                }
            }
            if (state.getData().getEventType() != null && state.getData().getEventType() == 2) {
                json.put("end", state.getData().getEventDate().toInstant().toEpochMilli());
            }

            if (!isNullOrEmpty(state.getData().getEventUser())) {
                json.put("updatedBy", state.getData().getEventUser());
            }
        }

        return json;
    }