示例#1
0
        public IServer Build()
        {
            if (_Handler == null)
            {
                throw new BuilderMissingPropertyException("Handler");
            }

            var network = new NetworkConfiguration(_RequestReadTimeout, _RequestMemoryLimit, _TransferBufferSize, _Backlog);

            var endpoints = new List <EndPointConfiguration>(_EndPoints);

            if (!endpoints.Any())
            {
                endpoints.Add(new EndPointConfiguration(IPAddress.Any, _Port, null));
                endpoints.Add(new EndPointConfiguration(IPAddress.IPv6Any, _Port, null));
            }

            var config = new ServerConfiguration(_Development, endpoints, network);

            var concerns = new IConcernBuilder[] { ErrorHandler.Default() }.Concat(_Concerns);

            var handler = new CoreRouter(_Handler, concerns, _Development);

            return(new ThreadedServer(_Companion, config, handler));
        }
示例#2
0
        public WebsiteBuilder Add(IConcernBuilder concern)
        {
            if (concern is ErrorHandlingProviderBuilder errorConcern)
            {
                _ErrorHandling = errorConcern;
            }
            else
            {
                _Concerns.Add(concern);
            }

            return(this);
        }
示例#3
0
 public SitemapProviderBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public EmbeddedResourcesProviderBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public MarkdownPageProviderBuilder <T> Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#6
0
 public IServerHost Add(IConcernBuilder concern)
 {
     _Builder.Add(concern); return(this);
 }
示例#7
0
 public LayoutBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#8
0
 public BundleBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#9
0
 public ResourceBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#10
0
 public DownloadProviderBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public CustomHandlerBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#12
0
 public IServerBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public LoadBalancerRedirectionBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public RazorPageProviderBuilder <T> Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#15
0
 public SinglePageBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#16
0
 public StyleRouterBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
 public VirtualHostRouterBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#18
0
 public ReverseProxyBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#19
0
 public PageProviderBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#20
0
 public ListingRouterBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }
示例#21
0
 public RedirectProviderBuilder Add(IConcernBuilder concern)
 {
     _Concerns.Add(concern);
     return(this);
 }