예제 #1
0
 public MqttServerApplicationMessageInterceptor(
     IMqttRepository repo,
     ILogger <MqttServerApplicationMessageInterceptor> logger)
 {
     _repo   = repo;
     _logger = logger;
 }
 public MqttServerConnectionValidator(
     IMqttRepository repo,
     ILogger <MqttServerConnectionValidator> logger)
 {
     _repo   = repo;
     _logger = logger;
 }
예제 #3
0
        public InsertService(
            ILogger <InsertService> logger,
            IMqttRepository repository,
            IHostApplicationLifetime appLifetime)
        {
            _logger      = logger;
            _repository  = repository;
            _appLifetime = appLifetime;

            _appLifetime.ApplicationStarted.Register(OnStarted);
            _appLifetime.ApplicationStopping.Register(OnStopping);
            _appLifetime.ApplicationStopped.Register(OnStopped);
        }
예제 #4
0
 public ServerBuilder(
     IConfiguration configuration,
     IMqttRepository repo,
     IMqttServerStorage storage,
     IMqttServerFactory factory,
     IMqttServerConnectionValidator validator,
     ILogger <ServerBuilder> logger)
 {
     _configuration = configuration;
     _storage       = storage;
     _factory       = factory;
     _validator     = validator;
     _logger        = logger;
 }
예제 #5
0
 public MqttService(
     ILogger <MqttService> logger,
     IMqttServerSubscriptionInterceptor interceptor,
     IMqttServerApplicationMessageInterceptor messageInterceptor,
     IServiceProvider serviceProvider,
     IHostApplicationLifetime appLifetime,
     IMqttRepository repo)
 {
     _logger             = logger;
     _interceptor        = interceptor;
     _messageInterceptor = messageInterceptor;
     _serviceProvider    = serviceProvider;
     _appLifetime        = appLifetime;
     _repo = repo;
 }
예제 #6
0
 public MqttStorage(IMqttRepository repo)
 {
     _repo = repo;
 }
 public MqttServerSubscriptionInterceptor(ILogger <MqttServerSubscriptionInterceptor> logger,
                                          IMqttRepository repo)
 {
     _logger = logger;
     _repo   = repo;
 }
예제 #8
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app,
                              IWebHostEnvironment env,
                              ILogService logService,
                              ILogMessageFactory logMessageFactory,
                              IConnectionProvider connectionProvider,
                              IMqttRepository repository,
                              IMqttCommandAdapter commandAdapter,
                              IAdapterSettingService adapterSettingService,
                              IUiConfigurationService uiConfigurationService,
                              INotificationService notificationService,
                              ISettingsService settingsService,
                              IFileSystemService fileSystemService,
                              ILogFormatterService logFormatterService,
                              ILogFileService logFileService,
                              ISettingsProvider settingsProvider)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }
            app.UseStaticFiles();

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller=Home}/{action=Index}/{id?}");
            });

            settingsProvider.ReadSettings();

            logService.RegisterSinks(new List <IlogSink>
            {
                new ConsoleLogSink(),
                new MemoryLogSink(logMessageFactory, notificationService),
                new FileLogSink(fileSystemService, logFormatterService, logFileService)
            });

            if (Debugger.IsAttached)
            {
                logService.RegisterSink(new DebugLogSink());
            }

            logService.Log(LogSeverity.Info, "Logging started.");

            var repo = new DatabaseRepository();

            repo.InitializeDatabase();

            commandAdapter.Initialize();
            connectionProvider.InitializeConnection();
            repository.Initialize();
            adapterSettingService.Initialize();
            uiConfigurationService.ReadAllConfigurationFiles();

            ConfigureSystemSpecifics(app.ApplicationServices);
            app.ApplicationServices.GetService <ICustomCommandConfigurationService>().ReloadConfiguration();
        }
예제 #9
0
 public ServiceController(ILogger <Controllers.ServiceController> logger, IMqttRepository repo)
 {
     _logger = logger;
     _repo   = repo;
 }