public void ConfigureServices(IServiceCollection services) { services.AddMvc() .SetCompatibilityVersion(CompatibilityVersion.Version_2_1); // Custom services services.AddSingleton(ChunkerConfig.Load(Configuration)); services.AddSingleton <StreamsConfig>(); services.AddSingleton <StreamsUpdateWatcher>(); services.AddSingleton <ChunkerProcManager>(); }
public void ConfigureServices(IServiceCollection services) { services.AddMvc(); // Entity Framework var connectionStr = _cfg["DBConnectionStr"]; services.AddDbContext <StreamerContext>( o => o.UseSqlite(connectionStr)); // Redis services.AddDistributedRedisCache(o => { o.Configuration = "localhost"; o.InstanceName = "VideoStreamings"; }); // Custom stuff //services.AddSingleton<StreamingProcManager>(); //services.AddSingleton<StreamsUpdateManager>(); services.AddSingleton(ChunkerConfig.Load(_cfg)); services.AddSingleton(StreamerSessionCfg.Load(_cfg)); services.AddSingleton <StreamsConfig>(); services.AddSingleton <StreamsUpdateWatcher>(); services.AddTransient <IChunkCollector, ChunkCollector>(); services.AddTransient < IPlaylistAssembler, SimplePlaylistAssembler>(); services.AddTransient <ITokenBroker, SHA256TokenBroker>(); services.AddTransient <ITokenParser, TokenParser>(); services.AddTransient <ISessionBroker, SessionBroker>(); services.AddTransient <UserTypeIdentifier>(); services.AddTransient <IUserTypeIdentifier, PaidUserTypeIdentifier>(); services.AddTransient <IUserTypeIdentifier, GuestUserTypeIdentifier>(); }