Plugin.cs 957 B

123456789101112131415161718192021222324252627282930
  1. using System;
  2. using System.Reactive.Linq;
  3. using MediaBrowser.Common.Net.Handlers;
  4. using MediaBrowser.Common.Plugins;
  5. using MediaBrowser.Controller;
  6. using MediaBrowser.HtmlBrowser.Handlers;
  7. namespace MediaBrowser.HtmlBrowser
  8. {
  9. public class Plugin : BasePlugin<BasePluginConfiguration>
  10. {
  11. protected override void InitInternal()
  12. {
  13. var httpServer = Kernel.Instance.HttpServer;
  14. httpServer.Where(ctx => ctx.LocalPath.IndexOf("/browser/", StringComparison.OrdinalIgnoreCase) != -1).Subscribe(ctx =>
  15. {
  16. string localPath = ctx.LocalPath;
  17. string srch = "/browser/";
  18. int index = localPath.IndexOf(srch, StringComparison.OrdinalIgnoreCase);
  19. string resource = localPath.Substring(index + srch.Length);
  20. ctx.Respond(new EmbeddedResourceHandler(ctx, resource));
  21. });
  22. }
  23. }
  24. }