commit | f80ef06356f02be2bb0995168255dc8de9ff0d04 | [log] [tgz] |
---|---|---|
author | Gary Morain <gmorain@chromium.org> | Wed May 16 14:57:04 2012 -0700 |
committer | Gerrit <chrome-bot@google.com> | Thu May 17 11:47:19 2012 -0700 |
tree | a0e3a52ac371fae85bae96651a27c0a8fbf92da6 | |
parent | 8a5726aa96d7a585dccb67d35038b8efeccfd46b [diff] |
shill: HookTable collects async actions to be executed later HookTable provides a facility for starting a set of generic actions and polling for their completion. For example, on shutdown, each service gets disconnected. A disconnect action may be instantaneous or it may require some time to complete. Users of HookTable use the Add() function to provide a closure for starting an action and a callback for pollings its completion. When an event occurs, the Run() function is called, which starts each action and polls for completion. Upon completion or timeout, Run() calls a user-supplied callback to notify the caller of the state of actions. BUG=chromium-os:22408 TEST=new unittests; ran all unittests. Change-Id: Ia42816a2a2b3c252108665ec64bc3c68f886463b Reviewed-on: https://gerrit.chromium.org/gerrit/22862 Commit-Ready: Gary Morain <gmorain@chromium.org> Reviewed-by: Gary Morain <gmorain@chromium.org> Tested-by: Gary Morain <gmorain@chromium.org>