using System;
using System.Threading.Tasks;
namespace FastGithub
{
///
/// 定义中间件管道创建者的接口
///
/// 中间件上下文
public interface IPipelineBuilder
{
///
/// 获取服务提供者
///
IServiceProvider AppServices { get; }
///
/// 使用中间件
///
///
///
///
///
IPipelineBuilder Use() where TMiddleware : class, IMiddleware;
///
/// 使用中间件
///
///
///
///
///
IPipelineBuilder Use(Func, Task> middleware);
///
/// 使用中间件
///
/// 中间件
///
IPipelineBuilder Use(Func, InvokeDelegate> middleware);
///
/// 创建所有中间件执行处理者
///
///
InvokeDelegate Build();
///
/// 使用默认配制创建新的PipelineBuilder
///
///
IPipelineBuilder New();
}
}