Persistance and recovery
This commit is contained in:
@ -26,6 +26,7 @@ type application struct {
|
||||
onQuoteResponse func(quoteresponse.QuoteResponse, quickfix.SessionID)
|
||||
onExecutionReport func(executionreport.ExecutionReport, quickfix.SessionID)
|
||||
onExecutionAck func(executionack.ExecutionAck, quickfix.SessionID)
|
||||
onRawMessage func(direction string, msg *quickfix.Message)
|
||||
}
|
||||
|
||||
func newApplication(n domain.Notifier) *application {
|
||||
@ -67,7 +68,13 @@ func (a *application) OnLogout(sessionID quickfix.SessionID) {
|
||||
|
||||
func (a *application) ToAdmin(_ *quickfix.Message, _ quickfix.SessionID) {}
|
||||
|
||||
func (a *application) ToApp(_ *quickfix.Message, _ quickfix.SessionID) error { return nil }
|
||||
func (a *application) ToApp(msg *quickfix.Message, _ quickfix.SessionID) error {
|
||||
if a.onRawMessage != nil {
|
||||
a.onRawMessage("OUT", msg)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (a *application) FromAdmin(_ *quickfix.Message, _ quickfix.SessionID) quickfix.MessageRejectError {
|
||||
return nil
|
||||
@ -88,6 +95,10 @@ func (a *application) FromApp(msg *quickfix.Message, sessionID quickfix.SessionI
|
||||
"rawMsg", msg.String(),
|
||||
)
|
||||
|
||||
if a.onRawMessage != nil {
|
||||
a.onRawMessage("IN", msg)
|
||||
}
|
||||
|
||||
rejErr := a.router.Route(msg, sessionID)
|
||||
if rejErr != nil {
|
||||
slog.Error("FIX FromApp routing failed",
|
||||
|
||||
Reference in New Issue
Block a user