protected void onExecutionReport()

in fix/core/src/main/java/deltix/connector/fix/FixTradeConnector.java [481:538]


    protected void onExecutionReport(Header header, Message message) {
        FixExecutionReport report = decode(fixExecutionReportCodec, fixExecutionReport, message);
        Contract contract = getContract(report);
        byte type = report.getExecutionType();

        switch (type) {
            case ExecType.PENDING_NEW:
                onOrderPendingNewMessage(header, report, contract, messages.orderPendingNewEvent());
                break;

            case ExecType.NEW:
                onOrderNewMessage(header, report, contract, messages.orderNewEvent());
                break;

            case ExecType.REJECTED:
                onOrderRejectMessage(header, report, contract, messages.orderRejectEvent());
                break;

            case ExecType.PENDING_CANCEL:
                onOrderPendingCancelMessage(header, report, contract, messages.orderPendingCancelEvent());
                break;

            case ExecType.CANCELED:
            case ExecType.EXPIRED:
            case ExecType.DONE_FOR_DAY:
                onOrderCancelMessage(header, report, contract, messages.orderCancelEvent());
                break;

            case ExecType.PENDING_REPLACE:
                onOrderPendingReplaceMessage(header, report, contract, messages.orderPendingReplaceEvent());
                break;

            case ExecType.REPLACE:
                onOrderReplaceMessage(header, report, contract, messages.orderReplaceEvent());
                break;

            case ExecType.ORDER_STATUS:
                onOrderStatusMessage(header, report, contract, messages.orderStatusEvent());
                break;

            case ExecType.TRADE:
            case ExecType.FILL:
            case ExecType.PARTIAL_FILL:
                onTradeReportMessage(header, report, contract, messages.tradeReportEvent());
                break;

            case ExecType.TRADE_CANCEL:
                onTradeCancelMessage(header, report, contract, messages.tradeCancelEvent());
                break;

            case ExecType.TRADE_CORRECT:
                onTradeCorrectMessage(header, report, contract, messages.tradeCorrectEvent());
                break;

            default:
                onCustomExecutionMessage(header, report, contract);
        }
    }