protected override void Process(CancellationToken cancellationToken) { Logger = new ConsoleLogger(ServiceName, (message, level) => level >= _logLevel, false); var appSettings = ConfigurationManager.AppSettings; Enum.TryParse(appSettings["LogLevel"], true, out _logLevel); var entityConnectionConfig = new EntityConnectionConfig(new DatabaseConnectionConfig(appSettings["DatabaseServer"], appSettings["DatabaseName"])); var repositoryContextFactory = new RepositoryContextFactory(Logger, entityConnectionConfig); var messageBusBuilder = new MessageBusBuilder(); messageBusBuilder.WithLogger(Logger); messageBusBuilder.WithServiceName(ServiceName); _messageBus = messageBusBuilder.Build(); _featureToggle = new Core.FeatureToggle(Logger, _messageBus, repositoryContextFactory); _messageBus.Start(cancellationToken); }