diff options
| author | David Ullmer <daullmer@gmail.com> | 2020-08-31 16:16:01 +0200 |
|---|---|---|
| committer | David Ullmer <daullmer@gmail.com> | 2020-08-31 16:16:01 +0200 |
| commit | b7c07f682152529a9993cd0fb9760ab668d4c930 (patch) | |
| tree | a40f59efb5e6e612df47673359c1d20c72a78101 /MediaBrowser.Controller/Events/IEventManager.cs | |
| parent | 9165dc3b3a94714da307079413f62326d5e585ef (diff) | |
| parent | 4cc7406fe92b468f8a4257d7c40bf1e28f2a3404 (diff) | |
Merge branch 'master' into library-pictures
Diffstat (limited to 'MediaBrowser.Controller/Events/IEventManager.cs')
| -rw-r--r-- | MediaBrowser.Controller/Events/IEventManager.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Events/IEventManager.cs b/MediaBrowser.Controller/Events/IEventManager.cs new file mode 100644 index 000000000..a1f40b3a6 --- /dev/null +++ b/MediaBrowser.Controller/Events/IEventManager.cs @@ -0,0 +1,28 @@ +using System; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Events +{ + /// <summary> + /// An interface that handles eventing. + /// </summary> + public interface IEventManager + { + /// <summary> + /// Publishes an event. + /// </summary> + /// <param name="eventArgs">the event arguments.</param> + /// <typeparam name="T">The type of event.</typeparam> + void Publish<T>(T eventArgs) + where T : EventArgs; + + /// <summary> + /// Publishes an event asynchronously. + /// </summary> + /// <param name="eventArgs">The event arguments.</param> + /// <typeparam name="T">The type of event.</typeparam> + /// <returns>A task representing the publishing of the event.</returns> + Task PublishAsync<T>(T eventArgs) + where T : EventArgs; + } +} |
