| 12345678910111213141516171819202122232425262728 | 
							- 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;
 
-     }
 
- }
 
 
  |