2012-03-15 7 views
3

* messages.logファイルのquickFIX/Jからのメッセージを再生する方法はありますか?quickFIX/Jメッセージを再生する方法はありますか?

この質問はしばらく前に頼まれたが、私はすべての新しい開発のwoderingよ表示されます: Store And Replay WCF Messages

意図はFIX接続の場合でも、他の側のメッセージを再実行できるようにすることです利用できません。

+0

何か見つかった場合は、回答として投稿してください。 – assylias

答えて

0

セットアップでFIXメッセージを繰り返すことはできませんでしたが、単体テストを使って「反復」して、QuickFIX/J manualの例で自分の単純なアクセプタを使用することができました。

私はいくつかのQuoteRequests私はsendLogoutをFooInitiatorを開始し、例えば呼んでユニットテストを使用して次に

public static void main(String[] args) throws Exception { 
    // FooApplication is your class that implements the Application interface 
    FooApplication application = new FooApplication(); 

    SessionSettings settings = new SessionSettings(new FileInputStream(fileName)); 
    MessageStoreFactory storeFactory = new FileStoreFactory(settings); 

    LogFactory[] logFactories = new LogFactory[] {new FileLogFactory(settings)}; 
    LogFactory logFactory = new CompositeLogFactory(logFactories); 

    MessageFactory messageFactory = new DefaultMessageFactory(); 
    Acceptor acceptor = new SocketAcceptor(application, storeFactory, settings, logFactory, messageFactory); 
    acceptor.start(); 

}

を模擬/メッセージや答えを受け取るために「FooApplication」とシンプルなアクセプターを作成している

()FooClient

public class FooClient extends quickfix.fix42.MessageCracker implements quickfix.Application { 

    // sendQuoteRequest 

    // sendNewOrderSingle 

    private boolean sendMessage(Message message) { 
    boolean result = false; 
    try { 
     result = Session.sendToTarget(message, session); 
    } catch (SessionNotFound e) { 
     logger.error("FooApplication SessionNotFound", e); 
     result = false; 
    } 
    return result; 
    } 

    public boolean sendLogout() { 
     return sendMessage(new Logout()); 
    } 
} 

からあなたがFIXメッセージのログを見ている場合は、おそらくあなたはを知らない場合にチェックすることをお勧めしますは無料でオープンソースです。

関連する問題