diff options
| author | crobibero <cody@robibe.ro> | 2020-09-03 10:37:35 -0600 |
|---|---|---|
| committer | crobibero <cody@robibe.ro> | 2020-09-03 10:37:35 -0600 |
| commit | b035a642d27ea4b0a22e9a539c641a055bac056b (patch) | |
| tree | 9b7ad34430d923a841a5789f49bb4dde2578c339 /MediaBrowser.Controller/Events/IEventManager.cs | |
| parent | 5e6cdc8842c3c81eb7e0363e6d36fac6630304e1 (diff) | |
| parent | 645db0524fb1368135ecea9e5b776ad9b490b17b (diff) | |
Merge remote-tracking branch 'upstream/master' into plugin-install
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; + } +} |
