protected override void Load(ContainerBuilder builder) { var services = new List <Type>(); //services.Add(typeof(EnvironmentService)); //services.Add(typeof(MusicCastHost)); var swimbaitConfig = SwimbaitConfig.Get(); RegisterTypes(builder, "Services", services); var environmentService = GetEnvironmentService(); var musicCastHost = new MusicCastHost(environmentService); musicCastHost.RelayHost = IPAddress.Parse(swimbaitConfig["RelayHost"]); builder.RegisterInstance <EnvironmentService>(environmentService) .AsImplementedInterfaces() .AsSelf() .SingleInstance(); builder.RegisterInstance <MusicCastHost>(musicCastHost) .AsImplementedInterfaces() .AsSelf() .SingleInstance(); }
public static void Main(string[] args) { var keyHandler = new KeyHandler(); // todo: IOC var environmentService = SwimbaitModule.GetEnvironmentService(); _multicastServer = new MulticastServer(environmentService); _multicastService = new MulticastService(environmentService); var _musicCastHost = new MusicCastHost(environmentService); //Add command line configuration source to read command line parameters. var builder = new ConfigurationBuilder(); var portsToListen = new [] { 80, EnvironmentService.SwimbaitDlnaPort, 51100 }; var urisToListen = portsToListen .ToList() .Select(p => $"http://{environmentService.IpAddress}:{p}"); var uriToListenString = string.Join(";", urisToListen); var config = builder .AddCommandLine(new[] { $"server.urls={uriToListenString}" }) .AddEnvironmentVariables() .Build(); _musicCastHost.RelayHost = IPAddress.Parse(config["Swimbait:RelayHost"]); // Dirty DI Startup._environmentService = environmentService; Startup._musicCastHost = _musicCastHost; var host = new WebHostBuilder() .UseConfiguration(config) .UseKestrel() .UseStartup <Startup>() .Build(); Console.WriteLine($"Starting the server. Listening on {uriToListenString}. Udp broadcasting to {environmentService.SubnetBroadcastIp}"); host.Start(); Console.WriteLine("Press 'Q' to stop the server"); Console.WriteLine("Press 'M' to send SSDP Multicast discovery"); Console.WriteLine("Press 'C' when ready to connect to the MusicCast app"); _multicastServer.Start(); keyHandler.KeyEvent += KeyHandler_KeyEvent; keyHandler.WaitForExit(); host.Dispose(); _multicastServer.Dispose(); }
public MediaRendererController( ILoggerFactory loggerFactory , MusicCastHost musicCastHost) : base(loggerFactory) { _musicCastHost = musicCastHost; }
public SystemController(ILoggerFactory loggerFactory, MusicCastHost musicCastHost) : base(loggerFactory) { _musicCastHost = musicCastHost; }
public DisttributionController(ILoggerFactory loggerFactory, MusicCastHost musicCastHost) : base(loggerFactory) { _musicCastHost = musicCastHost; }