私は多くの異なる修正バージョン(4.2、4.3、4.4)を扱ういくつかのコードを書いています。私が抱えている問題は、ハンドラーオブジェクトを作成するときに、修正バージョンごとに異なるハンドラーを使用するため、コードの重複を余儀なくされることです。例えば
@Handler
public void executionHandler(quickfix.fix42.ExecutionReport execution, SessionID sessionID) {
System.out.println(execution.getClOrdID().getValue());
}
@Handler
public void executionHandler(quickfix.fix43.ExecutionReport execution, SessionID sessionID) {
System.out.println(execution.getClOrdID().getValue());
}
私が書いている実際のコードははるかに複雑です(私はいくつかのフィールドを取得してデータを操作しています)。振り返りに頼らずにこの重複を減らす方法を考えることはできません。