public DatabaseServerRegistrarAndMessengerComponent(IRuntimeState runtime, IServerRegistrar serverRegistrar, IServerMessenger serverMessenger, IServerRegistrationService registrationService, ILogger logger, IndexRebuilder indexRebuilder) { _runtime = runtime; _logger = logger; _registrationService = registrationService; _indexRebuilder = indexRebuilder; // create task runner for DatabaseServerRegistrar _registrar = serverRegistrar as DatabaseServerRegistrar; if (_registrar != null) { _touchTaskRunner = new BackgroundTaskRunner <IBackgroundTask>("ServerRegistration", new BackgroundTaskRunnerOptions { AutoStart = true }, logger); } // create task runner for BatchedDatabaseServerMessenger _messenger = serverMessenger as BatchedDatabaseServerMessenger; if (_messenger != null) { _processTaskRunner = new BackgroundTaskRunner <IBackgroundTask>("ServerInstProcess", new BackgroundTaskRunnerOptions { AutoStart = true }, logger); } }
public DatabaseServerRegistrarAndMessengerComponent(IRuntimeState runtime, IServerRegistrar serverRegistrar, IServerMessenger serverMessenger, IServerRegistrationService registrationService, ILogger logger, IndexRebuilder indexRebuilder) { _registrar = serverRegistrar as DatabaseServerRegistrar; if (_registrar == null) { throw new Exception("panic: registar."); } _messenger = serverMessenger as BatchedDatabaseServerMessenger; if (_messenger == null) { throw new Exception("panic: messenger"); } _runtime = runtime; _logger = logger; _registrationService = registrationService; _indexRebuilder = indexRebuilder; _touchTaskRunner = new BackgroundTaskRunner <IBackgroundTask>("ServerRegistration", new BackgroundTaskRunnerOptions { AutoStart = true }, logger); _processTaskRunner = new BackgroundTaskRunner <IBackgroundTask>("ServerInstProcess", new BackgroundTaskRunnerOptions { AutoStart = true }, logger); }
/// <summary> /// Initializes a new instance of the <see cref="TouchServerTask"/> class. /// </summary> public TouchServerTask(IBackgroundTaskRunner <RecurringTaskBase> runner, int delayMilliseconds, int periodMilliseconds, IServerRegistrationService svc, DatabaseServerRegistrar registrar, string serverAddress, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { _svc = svc ?? throw new ArgumentNullException(nameof(svc)); _registrar = registrar; _serverAddress = serverAddress; _logger = logger; }
/// <summary> /// Initializes a new instance of the <see cref="RecurringTaskBase"/> class. /// </summary> /// <param name="runner">The task runner.</param> /// <param name="delayMilliseconds">The delay.</param> /// <param name="periodMilliseconds">The period.</param> /// <param name="svc"></param> /// <param name="registrar"></param> /// <param name="serverAddress"></param> /// <remarks>The task will repeat itself periodically. Use this constructor to create a new task.</remarks> public TouchServerTask(IBackgroundTaskRunner <RecurringTaskBase> runner, int delayMilliseconds, int periodMilliseconds, IServerRegistrationService svc, DatabaseServerRegistrar registrar, string serverAddress) : base(runner, delayMilliseconds, periodMilliseconds) { if (svc == null) { throw new ArgumentNullException("svc"); } _svc = svc; _registrar = registrar; _serverAddress = serverAddress; }
// bind to events protected override void ApplicationStarted(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext) { _registrar = ServerRegistrarResolver.Current.Registrar as DatabaseServerRegistrar; // only for the DatabaseServerRegistrar if (_registrar == null) { return; } UmbracoModule.RouteAttempt += UmbracoModuleRouteAttempt; }
// bind to events protected override void ApplicationStarted(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext) { _registrar = ServerRegistrarResolver.Current.Registrar as DatabaseServerRegistrar; // only for the DatabaseServerRegistrar if (_registrar == null) { return; } _backgroundTaskRunner = new BackgroundTaskRunner <IBackgroundTask>( new BackgroundTaskRunnerOptions { AutoStart = true }, applicationContext.ProfilingLogger.Logger); //We will start the whole process when a successful request is made UmbracoModule.RouteAttempt += UmbracoModuleRouteAttempt; }