Created by Jonathan on 01/01/2017.
Created by Jonathan on 01/01/2017.
Ask the session to resend everything then move ack to normal session state.
Ask the session to resend everything then move ack to normal session state.
Once resent, return to this initial state
The state to return to once I have dealt with this
Created by Jonathan on 01/01/2017.
Created by Jonathan on 01/01/2017.
There are some situations especially during logon where we send logout with a reason and then close the socket. Otherwise you send logout and then wait for a reply logout... or a timeout.
Created by Jonathan on 01/01/2017.
Transition state due to missing some message, ask them to resend and move to awaiting catch up.
Base of all initiator or acceptor states.
Base of all initiator or acceptor states. When enter the state an action can fire and then you can transition right to another state. Or you can receive events, which may then trigger a new state...
Not my design - its from their state transition spec.
Created by Jonathan on 01/01/2017.
Opened server socket, waiting for a client.
Transition state, got broken socket, so ensure its all closed up and go to disconnected
Transition state, action is close the socket
Created by Jonathan on 01/01/2017.
Transition state to send out a logon
Transition state, ack the login and go to logon response
Transition state from the spec, we got a login, we sent the ack, now either deal with msg seq num too high, or just go to active normal state
transition state to awaiting logon ack
waiting state, for the first login, ie we are the server, and a client has connected
waiting state, for the first login, ie we are the server, and a client has connected
SfSessionServerSocketOpenEvent into NoConnection transitions into networkconnection established
Created by Jonathan on 01/01/2017.
Created by Jonathan on 01/01/2017.
1. Send Logout response message 2. Wait for counterparty to disconnect up to 10 seconds. If max exceeded, disconnect and generate an “error” condition in test output.
Created by Jonathan during 2017.
Provides all of the state objects and classes which match the ancient Fix Spec document.
Overview
On entering a new state we can generate a message, and suggest the next state When receiving a message or event we can propose which state to enter next - which will fire off a message and move the state on again.
Its a wierd state machine taken from the Fix Spec. Bad pseudocode below:
SomeStateTransiton = handleEvent() moveState(someStateTransition)
where
moveState(newState) :state Somemsg = newState.stateTransitionSessionMessage newState.nextState match{ case None=> newState case Some(nextState) => moveState(newStata) }