package com.ai.trackwalker.uavaccess.flighthub;

public class FlightHubException extends RuntimeException {
    private final int httpStatus;
    private final String vendorCode;
    private final String classification;
    private final String requestId;

    public FlightHubException(
            int httpStatus,
            String vendorCode,
            String classification,
            String requestId,
            String message,
            Throwable cause
    ) {
        super(message, cause);
        this.httpStatus = httpStatus;
        this.vendorCode = vendorCode == null ? "" : vendorCode;
        this.classification = classification;
        this.requestId = requestId == null ? "" : requestId;
    }

    public int httpStatus() {
        return httpStatus;
    }

    public String vendorCode() {
        return vendorCode;
    }

    public String classification() {
        return classification;
    }

    public String requestId() {
        return requestId;
    }
}
