module Action: sig
.. end
type
plan
type
action = plan -> unit
val ftp_state : plan -> Ftp_client.ftp_state
Returns the ftp_state at the beginning of the plan
val execute : onreply:(Ftp_client.ftp_state -> Ftp_client.reply -> unit) ->
onerror:(Ftp_client.ftp_state -> Ftp_client.reply -> unit) ->
Ftp_client.ftp_client_pi -> action -> unit
Executes the action for the given client PI. If the normal
execution path is taken, finally onreply
is called once.
If the error execution path is taken, finally onerror
is called
once.
val empty : action
Do nothing
val command : Ftp_client.cmd -> action
Execute the command
val dyn_command : (unit -> Ftp_client.cmd) -> action
Execute the computed command
val seq2 : action ->
action -> action
Do the two actions in turn
val full_seq2 : action ->
(Ftp_client.reply -> action) -> action
Do the first action, then get the second action using the reply
of the first action.
val seq : action list -> action
Do the list of actions in turn
val expect : Ftp_client.cmd_state -> action -> action
If the execution of the action yields the passed state, continue
normally, otherwise treat the situation as error
val seq2_case : action ->
(Ftp_client.cmd_state * action) list ->
action
Do the first action, then check the resulting command state.
The matching second action is executed. If no second action
matches, the situation is treated as error