发送消息后的quickfix事件

时间:2013-10-07 12:49:41

标签: java quickfix

我正在使用quickfix库修复协议。

我写了这样的课:

public class ApplicationImpl implements Application {
...
    @Override
public void toApp(Message arg0, SessionID arg1) throws DoNotSend {
    //this is invoked before sending message
}
...
}

我想知道如何在发送消息后调用某些方法?

3 个答案:

答案 0 :(得分:1)

QuickFIX不提供post-message-send回调。

答案 1 :(得分:0)

您需要在代码中的某处发送消息(而不是覆盖方法):

Session.sendToTarget(outgoingMessage, orderSession);

这将执行一些内部quickfixJ代码,然后调用toApp()toApp()方法允许您在将消息发送到代理之前对其进行修改。但理想情况下,为了在您发送邮件后执行某些操作,只需在调用Session.sendToTarget()后添加代码。

答案 2 :(得分:0)

如果您喜欢冒险,可以修改QuickFIX / J来执行此操作。 MINA网络层确实提供了messageSent回调。如果在QFJ的InitiatorIoHandler(或AcceptorIoHandler)中覆盖该方法,则可以直接处理messageSent事件或将其传播到已修改的Application接口。