/// <summary> /// /// </summary> /// <see cref="AppServerModuleBase.OnStart(AppServerModuleBase.StartStopContext, ref bool)" /> protected override void OnStart(AppServerModuleBase.StartStopContext context, ref bool isRunning) { this.DisposeCurrentHandler(); var newServer = ServiceLocator.Current.GetInstance <IHttpServer>(); // HTTPs? { bool?useHttps; this.Context .Config .TryGetValue <bool?>(category: "service", name: "use_https", value: out useHttps, defaultVal: false); newServer.UseSecureHttp = useHttps ?? false; } // port { int?port; this.Context .Config .TryGetValue <int?>(category: "service", name: "port", value: out port, defaultVal: 23979); newServer.Port = port ?? 23979; } if (newServer.UseSecureHttp) { // SSL thumbprint { newServer.SetSslCertificateByThumbprint(this.Context .Config .GetValue <IEnumerable <char> >(category: "service", name: "ssl_thumbprint")); } } var newHandler = new RequestHandler(this, newServer); try { newHandler.Start(); this._currentHandler = newHandler; } catch { newHandler.Dispose(); throw; } }
/// <summary> /// /// </summary> /// <see cref="AppServerModuleBase.OnStart(AppServerModuleBase.StartStopContext, ref bool)" /> protected override void OnStop(AppServerModuleBase.StartStopContext context, ref bool isRunning) { this.DisposeCurrentHandler(); }
/// <summary> /// /// </summary> /// <see cref="AppServerModuleBase.OnStart(AppServerModuleBase.StartStopContext, ref bool)" /> protected override void OnStop(AppServerModuleBase.StartStopContext context, ref bool isRunning) { this.DisposeOldTrackerClient(); }
/// <summary> /// /// </summary> /// <see cref="AppServerModuleBase.OnStart(AppServerModuleBase.StartStopContext, ref bool)" /> protected override void OnStart(AppServerModuleBase.StartStopContext context, ref bool isRunning) { // client //TODO /* * { * var port = 11111; * * // Create the settings which the engine will use * // downloadsPath - this is the path where we will save all the files to * // port - this is the port we listen for connections on * var settings = new EngineSettings(); * settings.PreferEncryption = false; * settings.AllowedEncryption = EncryptionTypes.All; * * // Create the default settings which a torrent will have. * // 4 Upload slots - a good ratio is one slot per 5kB of upload speed * // 50 open connections - should never really need to be changed * // Unlimited download speed - valid range from 0 -> int.Max * // Unlimited upload speed - valid range from 0 -> int.Max * var torrentDefaults = new TorrentSettings(4, 150, 0, 0); * * var newClient = new ClientEngine(settings); * newClient.ChangeListenEndpoint(new IPEndPoint(IPAddress.Any, port)); * * var torrent = TorrentFile.Load(@"E:\Dev\debian-7.2.0-i386-netinst.iso.torrent"); * * var manager = new TorrentManager(torrent, * @"E:\Dev\debian-7.2.0-i386-netinst.iso", * torrentDefaults); * * long test = 0; * manager.PieceManager.BlockReceived += (sender, e) => * { ++test; * if (e != null) * { * GlobalConsole.Current * .WriteLine(torrent.Files[0].BitField.PercentComplete); * } * }; * * // Every time a piece is hashed, this is fired. * manager.PeersFound += (sender, e) => * { * if (e != null) * { * * } * }; * * // Every time the state changes (Stopped -> Seeding -> Downloading -> Hashing) this is fired * manager.TorrentStateChanged += (sender, e) => * { * if (e != null) * { * * } * }; * * newClient.Register(manager); * * newClient.StartAll(); * this.TorrentClient = newClient; * }*/ }
/// <summary> /// /// </summary> /// <see cref="AppServerModuleBase.OnStart(AppServerModuleBase.StartStopContext, ref bool)" /> protected override void OnStop(AppServerModuleBase.StartStopContext context, ref bool isRunning) { }