public SocketStream( ISocketOptions socketOptions, IJsonSerializer jsonSerializer) { _jsonSerializer = jsonSerializer; var bufferSize = socketOptions.GetBufferSize(); _buffer = new byte[bufferSize]; _cancellationToken = default(CancellationToken); }
public void Configure( IApplicationBuilder app, IDatabaseManager databaseManager, ISeedManager seedManager, ILoggerFactory loggerFactory, IRethinkDbManager rethinkDbManager, ISocketOptions socketOptions, ISocketMiddleware socketMiddleware) { if (Env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions { HotModuleReplacement = true }); app.UseCors("CorsPolicy"); } else { app.UseExceptionHandler("/Home/Error"); } loggerFactory.AddFile("Logs/logs-{Date}.txt", LogLevel.Error); app.UseStaticFiles(); app.UseAuthentication(); app.UseWebSockets(socketOptions.GetOptions()); app.Use(async(context, next) => await socketMiddleware.Invoke(context, next)); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); routes.MapSpaFallbackRoute( name: "spa-fallback", defaults: new { controller = "Home", action = "Index" }); }); rethinkDbManager.EnsureDatabaseCreated(); databaseManager.EnsureDatabaseCreated(); seedManager.Seed(); app.UseMvcWithDefaultRoute(); }
public static IMemcachedConfigurationBuilder SetOptions(this IMemcachedConfigurationBuilder builder, ISocketOptions options) { builder.Services.AddSingleton(options); builder.Services.AddTransient <ISocketFactory, AsyncSocketFactory>(); return(builder); }