public NotificationHubPushRegistrationService( IInstallationDeviceRepository installationDeviceRepository, GlobalSettings globalSettings) { _installationDeviceRepository = installationDeviceRepository; _globalSettings = globalSettings; _client = NotificationHubClient.CreateClientFromConnectionString( _globalSettings.NotificationHub.ConnectionString, _globalSettings.NotificationHub.HubName); }
public NotificationHubPushNotificationService( IInstallationDeviceRepository installationDeviceRepository, GlobalSettings globalSettings, IHttpContextAccessor httpContextAccessor) { _installationDeviceRepository = installationDeviceRepository; _globalSettings = globalSettings; _httpContextAccessor = httpContextAccessor; _client = NotificationHubClient.CreateClientFromConnectionString( _globalSettings.NotificationHub.ConnectionString, _globalSettings.NotificationHub.HubName); }
public MultiServicePushNotificationServiceTests() { _deviceRepository = Substitute.For <IDeviceRepository>(); _installationDeviceRepository = Substitute.For <IInstallationDeviceRepository>(); _globalSettings = new GlobalSettings(); _httpContextAccessor = Substitute.For <IHttpContextAccessor>(); _logger = Substitute.For <ILogger <MultiServicePushNotificationService> >(); _hubLogger = Substitute.For <ILogger <NotificationsApiPushNotificationService> >(); _sut = new MultiServicePushNotificationService( _deviceRepository, _installationDeviceRepository, _globalSettings, _httpContextAccessor, _logger, _hubLogger ); }
public MultiServicePushNotificationService( IHttpClientFactory httpFactory, IDeviceRepository deviceRepository, IInstallationDeviceRepository installationDeviceRepository, GlobalSettings globalSettings, IHttpContextAccessor httpContextAccessor, ILogger <MultiServicePushNotificationService> logger, ILogger <RelayPushNotificationService> relayLogger, ILogger <NotificationsApiPushNotificationService> hubLogger) { if (globalSettings.SelfHosted) { if (CoreHelpers.SettingHasValue(globalSettings.PushRelayBaseUri) && globalSettings.Installation?.Id != null && CoreHelpers.SettingHasValue(globalSettings.Installation?.Key)) { _services.Add(new RelayPushNotificationService(httpFactory, deviceRepository, globalSettings, httpContextAccessor, relayLogger)); } if (CoreHelpers.SettingHasValue(globalSettings.InternalIdentityKey) && CoreHelpers.SettingHasValue(globalSettings.BaseServiceUri.InternalNotifications)) { _services.Add(new NotificationsApiPushNotificationService( httpFactory, globalSettings, httpContextAccessor, hubLogger)); } } else { if (CoreHelpers.SettingHasValue(globalSettings.NotificationHub.ConnectionString)) { _services.Add(new NotificationHubPushNotificationService(installationDeviceRepository, globalSettings, httpContextAccessor)); } if (CoreHelpers.SettingHasValue(globalSettings.Notifications?.ConnectionString)) { _services.Add(new AzureQueuePushNotificationService(globalSettings, httpContextAccessor)); } } _logger = logger; }