2
0

SystemEvents.cs 907 B

12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. using MediaBrowser.Controller;
  3. using MediaBrowser.Controller.Plugins;
  4. using MediaBrowser.Model.System;
  5. namespace Emby.Server.Implementations.EntryPoints
  6. {
  7. public class SystemEvents : IServerEntryPoint
  8. {
  9. private readonly ISystemEvents _systemEvents;
  10. private readonly IServerApplicationHost _appHost;
  11. public SystemEvents(ISystemEvents systemEvents, IServerApplicationHost appHost)
  12. {
  13. _systemEvents = systemEvents;
  14. _appHost = appHost;
  15. }
  16. public void Run()
  17. {
  18. _systemEvents.SystemShutdown += _systemEvents_SystemShutdown;
  19. }
  20. private void _systemEvents_SystemShutdown(object sender, EventArgs e)
  21. {
  22. _appHost.Shutdown();
  23. }
  24. public void Dispose()
  25. {
  26. _systemEvents.SystemShutdown -= _systemEvents_SystemShutdown;
  27. }
  28. }
  29. }