Esempio n. 1
0
        public SocketStream(
            ISocketOptions socketOptions,
            IJsonSerializer jsonSerializer)
        {
            _jsonSerializer = jsonSerializer;
            var bufferSize = socketOptions.GetBufferSize();

            _buffer            = new byte[bufferSize];
            _cancellationToken = default(CancellationToken);
        }
Esempio n. 2
0
        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();
        }
Esempio n. 3
0
        public static IMemcachedConfigurationBuilder SetOptions(this IMemcachedConfigurationBuilder builder, ISocketOptions options)
        {
            builder.Services.AddSingleton(options);
            builder.Services.AddTransient <ISocketFactory, AsyncSocketFactory>();

            return(builder);
        }