Expand documentation for JobManager
authorJonathan Maw <jonathan.maw@codethink.co.uk>
Wed, 8 Aug 2012 16:13:53 +0000 (17:13 +0100)
committerJonathan Maw <jonathan.maw@codethink.co.uk>
Fri, 10 Aug 2012 08:40:02 +0000 (09:40 +0100)
node-startup-controller/job-manager.c

index b8a654c..85d4a0c 100644 (file)
  * @short_description: Manages systemd jobs.
  * @stability: Internal
  * 
- * The Job Manager simplifies starting and stopping systemd units by handling all the
+ * The #JobManager simplifies starting and stopping systemd units by handling all the
  * D-Bus communication with the systemd manager internally. Units can be started and
- * stopped using job_manager_start() and job_manager_stop().
+ * stopped using job_manager_start() and job_manager_stop() and will call the @callback
+ * passed to the function when the unit is started or stopped.
+ * 
+ * The #JobManager contains an internal table which associates systemd job names with the
+ * necessary information about that job, e.g. the unit name.
+ * 
+ * When the #JobManager is told to start or stop a unit, it creates a job in systemd to
+ * start or stop that unit, stores the name of that job and waits until that job has
+ * finished before calling the @callback.
+ * 
+ * The #JobManager finds out that a job has finished by listening to "JobRemoved" signals
+ * from systemd and looking for that job by its job name.
  */