示例#1
0
 public ClassicTumblerRepository(TumblerRuntime runtime)
 {
     if (runtime == null)
     {
         throw new ArgumentNullException(nameof(runtime));
     }
     _Runtime = runtime;
 }
示例#2
0
        public static async Task <TumblerRuntime> FromConfigurationAsync(TumblerConfiguration conf, ClientInteraction interaction)
        {
            if (conf == null)
            {
                throw new ArgumentNullException("conf");
            }
            TumblerRuntime runtime = new TumblerRuntime();
            await runtime.ConfigureAsync(conf, interaction).ConfigureAwait(false);

            return(runtime);
        }
示例#3
0
 public static IWebHostBuilder UseAppConfiguration(this IWebHostBuilder builder, TumblerRuntime runtime)
 {
     builder.ConfigureServices(services =>
     {
         services.AddSingleton(provider =>
         {
             return(runtime);
         });
         services.AddSingleton <ThreadPoolWrapper>();
         services.AddSingleton <CustomThreadPool>(s => s.GetRequiredService <ThreadPoolWrapper>().ThreadPool);
     });
     builder.UseTCPServer(new ServerOptions(runtime.LocalEndpoint)
     {
         IncludeHeaders = false
     });
     return(builder);
 }
 public ClassicTumblerRepository(Network network, TumblerRuntime runtime)
 {
     _Network = network;
     _Runtime = runtime ?? throw new ArgumentNullException(nameof(runtime));
 }
示例#5
0
        public static IWebHostBuilder UseAppConfiguration(this IWebHostBuilder builder, TumblerRuntime runtime)
        {
            builder.ConfigureServices(services =>
            {
                services.AddSingleton(provider =>
                {
                    return(runtime);
                });
                services.AddSingleton <ThreadPoolWrapper>();
                services.AddSingleton <CustomThreadPool>(s => s.GetRequiredService <ThreadPoolWrapper>().ThreadPool);
            });

            if (runtime.TumblerProtocol == TumblerProtocolType.Tcp)
            {
                builder.UseTCPServer(new ServerOptions(runtime.LocalEndpoint)
                {
                    IncludeHeaders = false
                });
            }
            else if (runtime.TumblerProtocol == TumblerProtocolType.Http)
            {
                builder.UseKestrel()
                .UseUrls($"http://{runtime.LocalEndpoint}");
            }

            return(builder);
        }
示例#6
0
        public static IWebHostBuilder UseAppConfiguration(this IWebHostBuilder builder, TumblerRuntime runtime)
        {
            builder.ConfigureServices(services =>
            {
                services.AddSingleton(provider =>
                {
                    return(runtime);
                });
            });

            return(builder);
        }
示例#7
0
 public static IWebHostBuilder UseAppConfiguration(this IWebHostBuilder builder, TumblerRuntime runtime)
 {
     builder.ConfigureServices(services =>
     {
         services.AddSingleton(provider =>
         {
             return(runtime);
         });
     });
     builder.UseTCPServer(new ServerOptions(runtime.LocalEndpoint)
     {
         IncludeHeaders = false
     });
     return(builder);
 }