package sihl-queue

  1. Overview
  2. Docs

Source file repo.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
module Map = Map.Make (String)

module type Sig = sig
  val lifecycles : Sihl.Container.lifecycle list
  val register_migration : unit -> unit
  val register_cleaner : unit -> unit

  val enqueue
    :  ?ctx:(string * string) list
    -> Sihl.Contract.Queue.instance
    -> unit Lwt.t

  val enqueue_all
    :  ?ctx:(string * string) list
    -> Sihl.Contract.Queue.instance list
    -> unit Lwt.t

  val find_workable
    :  ?ctx:(string * string) list
    -> unit
    -> Sihl.Contract.Queue.instance list Lwt.t

  val find
    :  ?ctx:(string * string) list
    -> string
    -> Sihl.Contract.Queue.instance option Lwt.t

  val query
    :  ?ctx:(string * string) list
    -> unit
    -> Sihl.Contract.Queue.instance list Lwt.t

  val update
    :  ?ctx:(string * string) list
    -> Sihl.Contract.Queue.instance
    -> unit Lwt.t

  val delete
    :  ?ctx:(string * string) list
    -> Sihl.Contract.Queue.instance
    -> unit Lwt.t
end

module InMemory : Sig = Repo_inmemory
module MariaDb : Sig = Repo_sql.MakeMariaDb (Sihl.Database.Migration.MariaDb)

module PostgreSql : Sig =
  Repo_sql.MakePostgreSql (Sihl.Database.Migration.PostgreSql)
OCaml

Innovation. Community. Security.