public static IMorseLBuilder AddRedisBackplane(this IMorseLBuilder builder, Action <ConfigurationOptions> options) { builder.Services.Configure <ConfigurationOptions>(options); builder.Services.AddSingleton <IBackplane, RedisBackplane>(); return(builder); }
/// <summary> /// Add middleware that MorseL will invoke during web socket data transmission. Note: The /// lifetime passed in determines how and when the created middleware is created and exists. /// </summary> /// <typeparam name="TMiddleware">The type of the middleware to be invoked.</typeparam> /// <param name="builder">The MorseLBuilder object</param> /// <param name="lifetime">The lifetime the middleware should be created and adhere to.</param> /// <returns></returns> public static IMorseLBuilder AddMiddleware <TMiddleware>(this IMorseLBuilder builder, ServiceLifetime lifetime) where TMiddleware : Sockets.Middleware.IMiddleware { builder.Services.TryAddEnumerable(ServiceDescriptor.Describe(typeof(Sockets.Middleware.IMiddleware), typeof(TMiddleware), lifetime)); return(builder); }