package com.cameleer.server.core.storage.model;

import java.time.Instant;
import java.util.List;

public record ExecutionDocument(
        String executionId, String routeId, String instanceId, String applicationId,
        String status, String correlationId, String exchangeId,
        Instant startTime, Instant endTime, Long durationMs,
        String errorMessage, String errorStacktrace,
        List<ProcessorDoc> processors,
        String attributes,
        boolean hasTraceData,
        boolean isReplay
) {
    public record ProcessorDoc(
            String processorId, String processorType, String status,
            String errorMessage, String errorStacktrace,
            String inputBody, String outputBody,
            String inputHeaders, String outputHeaders,
            String attributes
    ) {}
}
