diff options
| author | crobibero <cody@robibe.ro> | 2020-09-03 12:14:11 -0600 |
|---|---|---|
| committer | crobibero <cody@robibe.ro> | 2020-09-03 12:14:11 -0600 |
| commit | a523ff840c4f4a83800bca02280e5b0f7765658b (patch) | |
| tree | 5178a9806f056266ab3c28554ef4dc2fe46e255d /MediaBrowser.Controller/Events/IEventManager.cs | |
| parent | cb44f16068bb66db7e35e473530c0a85583c2511 (diff) | |
| parent | 645db0524fb1368135ecea9e5b776ad9b490b17b (diff) | |
Merge remote-tracking branch 'upstream/master' into output-formatters
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; + } +} |
