public static SuperSocketHostBuilder <TReceivePackage> UsePipelineFilterFactory <TReceivePackage>(this ISuperSocketHostBuilder hostBuilder, Func <object, IPipelineFilter <TReceivePackage> > filterFactory)
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePipelineFilterFactory(filterFactory));
 }
 public static SuperSocketHostBuilder <TReceivePackage> UseHostedService <TReceivePackage, THostedService>(this ISuperSocketHostBuilder hostBuilder)
     where THostedService : SuperSocketService <TReceivePackage>
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UseHostedService <THostedService>());
 }
 public static SuperSocketHostBuilder <TReceivePackage> UsePipelineFilterFactory <TReceivePackage, TPipelineFilterFactory>(this ISuperSocketHostBuilder hostBuilder)
     where TPipelineFilterFactory : class, IPipelineFilterFactory <TReceivePackage>
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePipelineFilterFactory <TPipelineFilterFactory>());
 }
 public static SuperSocketHostBuilder <TReceivePackage> UsePipelineFilter <TReceivePackage, TPipelineFilter>(this ISuperSocketHostBuilder hostBuilder)
     where TPipelineFilter : IPipelineFilter <TReceivePackage>, new()
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePipelineFilter <TPipelineFilter>());
 }
 public static SuperSocketHostBuilder <TReceivePackage> UsePackageDecoder <TReceivePackage, TPackageDecoder>(this ISuperSocketHostBuilder hostBuilder)
     where TPackageDecoder : class, IPackageDecoder <TReceivePackage>
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePackageDecoder <TPackageDecoder>());
 }
 public static SuperSocketHostBuilder <TReceivePackage> UsePackageDecoder <TReceivePackage>(this ISuperSocketHostBuilder hostBuilder, IPackageDecoder <TReceivePackage> packageDecoder)
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePackageDecoder(packageDecoder));
 }
 public static SuperSocketHostBuilder <TReceivePackage> UsePackageHandler <TReceivePackage>(this ISuperSocketHostBuilder hostBuilder, Func <IAppSession, TReceivePackage, ValueTask> packageHandler, Func <IAppSession, PackageHandlingException <TReceivePackage>, ValueTask <bool> > errorHandler = null)
     where TReceivePackage : class
 {
     return(hostBuilder.AsSuperSocketBuilder <TReceivePackage>().UsePackageHandler(packageHandler, errorHandler: errorHandler));
 }