public void ConfigureMiddlewares(IHyperaiApplicationBuilder app) { app.UseLogging(); app.UseBlacklist(); app.UseTranslator(); app.UseBots(); app.UseUnits(); }
/// <summary> /// 使插件生效 /// </summary> private static void SearchConfigurePluginServices(IHyperaiApplicationBuilder app) { var plugins = PluginManager.Instance.GetManagedPlugins(); foreach (var type in plugins) { var plugin = PluginManager.Instance.Activate(type); plugin.ConfigureServices(app.Services); } }
/// <summary> /// 使插件生效 /// </summary> private static void NothingToSay(IHyperaiApplicationBuilder app) { IEnumerable <Type> plugins = PluginManager.Instance.GetManagedPlugins(); foreach (Type type in plugins) { PluginBase plugin = PluginManager.Instance.Activate(type); plugin.ConfigureServices(app.Services); } }
public static IHyperaiApplicationBuilder Use <TM>(this IHyperaiApplicationBuilder builder) where TM : IMiddleware { builder.Use(typeof(TM)); return(builder); }
public static IHyperaiApplicationBuilder UseUnits(this IHyperaiApplicationBuilder builder) { builder.Use <UnitMiddleware>(); return(builder); }
/// <summary> /// 搜索插件并加载 /// </summary> /// <param name="app"></param> /// <returns></returns> private static async Task FuckUnitTestButMyGuidelineTellMeItIsRequiredInHugeProjectsSoHaveToKeepItBYWSomeTestsMayNotWorkAndMissing(IHyperaiApplicationBuilder app) { foreach (string file in Directory.GetFiles(Path.Combine(Environment.CurrentDirectory, "plugins"), "*.nupkg")) { await PluginManager.Instance.LoadPackageAsync(file); } }
public static IHyperaiApplicationBuilder UseBots(this IHyperaiApplicationBuilder app) { app.Use <BotMiddleware>(); return(app); }
public static IHyperaiApplicationBuilder UseBlacklist(this IHyperaiApplicationBuilder app) { app.Use <BlockMiddleware>(); return(app); }
public static IHyperaiApplicationBuilder UseLogging(this IHyperaiApplicationBuilder app) { app.Use <LoggingMiddleware>(); return(app); }
public static IHyperaiApplicationBuilder UseTranslator(this IHyperaiApplicationBuilder app) { app.Use <TranslatorMiddleware>(); return(app); }