Source file start_app.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
open! Core
open! Async
module Local_or_remote = Backend.Settings

let backend = (module Backend : Rpc_parallel.Backend)

let backend_and_settings local_or_remote =
  Rpc_parallel.Backend_and_settings.T ((module Backend), local_or_remote)
;;

let start_app
  ?rpc_max_message_size
  ?rpc_buffer_age_limit
  ?rpc_handshake_timeout
  ?rpc_heartbeat_config
  ?when_parsing_succeeds
  ?complete_subcommands
  ?add_validate_parsing_flag
  ?argv
  ~local_or_remote
  command
  =
  Rpc_parallel.start_app
    ?rpc_max_message_size
    ?rpc_buffer_age_limit
    ?rpc_handshake_timeout
    ?rpc_heartbeat_config
    ?when_parsing_succeeds
    ?complete_subcommands
    ?add_validate_parsing_flag
    ?argv
    (backend_and_settings local_or_remote)
    command
;;

module For_testing = struct
  let initialize =
    Rpc_parallel.For_testing.initialize
      (backend_and_settings
         Local_or_remote.only_allow_local_workers_will_fail_to_connect_if_remote)
  ;;
end

module Expert = struct
  let start_master_server_exn
    ?rpc_max_message_size
    ?rpc_buffer_age_limit
    ?rpc_handshake_timeout
    ?rpc_heartbeat_config
    ?pass_name
    ~local_or_remote
    =
    Rpc_parallel.Expert.start_master_server_exn
      ?rpc_max_message_size
      ?rpc_buffer_age_limit
      ?rpc_handshake_timeout
      ?rpc_heartbeat_config
      ?pass_name
      (backend_and_settings local_or_remote)
  ;;

  let worker_command = Rpc_parallel.Expert.worker_command backend
  let start_worker_server_exn = Rpc_parallel.Expert.start_worker_server_exn backend
end