IHttpListener.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using MediaBrowser.Controller.Net;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Threading.Tasks;
  5. using MediaBrowser.Model.Services;
  6. namespace Emby.Server.Implementations.HttpServer
  7. {
  8. public interface IHttpListener : IDisposable
  9. {
  10. /// <summary>
  11. /// Gets or sets the error handler.
  12. /// </summary>
  13. /// <value>The error handler.</value>
  14. Action<Exception, IRequest, bool> ErrorHandler { get; set; }
  15. /// <summary>
  16. /// Gets or sets the request handler.
  17. /// </summary>
  18. /// <value>The request handler.</value>
  19. Func<IHttpRequest, Uri, Task> RequestHandler { get; set; }
  20. /// <summary>
  21. /// Gets or sets the web socket handler.
  22. /// </summary>
  23. /// <value>The web socket handler.</value>
  24. Action<WebSocketConnectEventArgs> WebSocketConnected { get; set; }
  25. /// <summary>
  26. /// Gets or sets the web socket connecting.
  27. /// </summary>
  28. /// <value>The web socket connecting.</value>
  29. Action<WebSocketConnectingEventArgs> WebSocketConnecting { get; set; }
  30. /// <summary>
  31. /// Starts this instance.
  32. /// </summary>
  33. /// <param name="urlPrefixes">The URL prefixes.</param>
  34. void Start(IEnumerable<string> urlPrefixes);
  35. /// <summary>
  36. /// Stops this instance.
  37. /// </summary>
  38. void Stop();
  39. }
  40. }