init commit
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
(ns Supervisor
|
||||
"Elixir Supervisor module — OTP supervisor for fault-tolerant process trees.
|
||||
|
||||
In CljElixir: (Supervisor/start-link children opts), etc.
|
||||
Strategies: :one-for-one, :one-for-all, :rest-for-one.")
|
||||
|
||||
(defn start-link
|
||||
"Starts a supervisor with child specifications.
|
||||
(Supervisor/start-link [{MyWorker [arg1]}] :strategy :one-for-one)
|
||||
(Supervisor/start-link MyApp [init-arg])"
|
||||
([children-or-module opts-or-arg])
|
||||
([module arg opts]))
|
||||
|
||||
(defn start-child
|
||||
"Dynamically starts a child under the supervisor.
|
||||
(Supervisor/start-child sup child-spec)"
|
||||
[supervisor child-spec])
|
||||
|
||||
(defn terminate-child
|
||||
"Terminates a child process.
|
||||
(Supervisor/terminate-child sup child-id)"
|
||||
[supervisor child-id])
|
||||
|
||||
(defn restart-child
|
||||
"Restarts a terminated child.
|
||||
(Supervisor/restart-child sup child-id)"
|
||||
[supervisor child-id])
|
||||
|
||||
(defn delete-child
|
||||
"Deletes a terminated child specification.
|
||||
(Supervisor/delete-child sup child-id)"
|
||||
[supervisor child-id])
|
||||
|
||||
(defn which-children
|
||||
"Returns a list of all children with their info.
|
||||
(Supervisor/which-children sup) ;=> [{id, pid, type, modules} ...]"
|
||||
[supervisor])
|
||||
|
||||
(defn count-children
|
||||
"Returns a map with child counts by status.
|
||||
(Supervisor/count-children sup) ;=> %{active: 2, specs: 2, supervisors: 0, workers: 2}"
|
||||
[supervisor])
|
||||
|
||||
(defn stop
|
||||
"Stops the supervisor.
|
||||
(Supervisor/stop sup) ;=> :ok"
|
||||
([supervisor])
|
||||
([supervisor reason])
|
||||
([supervisor reason timeout]))
|
||||
|
||||
(defn child-spec
|
||||
"Builds a child specification map."
|
||||
[module overrides])
|
||||
|
||||
(defn init
|
||||
"Returns supervisor init spec. For use in module-based supervisors."
|
||||
[children-and-opts])
|
||||
Reference in New Issue
Block a user