public MessageService(IPushNotificationProvider pushNotificationProvider) { PushNotification = pushNotificationProvider; UnitOfWork = new CoreUnitOfWork(); MessageBiz = new MessageBiz(UnitOfWork); NotificationBiz = new NotificationBiz(UnitOfWork); }
public CommunicationsService(ICommunicationsRepository communicationsRepository, IStudentRepository studentRepository, IParentRepository parentRepository, ITeacherRepository teacherRepository, IImageProvider imageProvider, IPushNotificationProvider pushNotificationProvider, IMessagingProvider messagingProvider, ISMSProvider smsProvider, ITranslationProvider translationProvider, ICustomParametersProvider customParametersProvider, IDateProvider dateProvider, ICollection <IMessageProvider> messageProviders, IStaffRepository staffRepository) { _communicationsRepository = communicationsRepository; _studentRepository = studentRepository; _parentRepository = parentRepository; _teacherRepository = teacherRepository; _imageProvider = imageProvider; _pushNotificationProvider = pushNotificationProvider; _messagingProvider = messagingProvider; _smsProvider = smsProvider; _translationProvider = translationProvider; _customParametersProvider = customParametersProvider; _dateProvider = dateProvider; _messageProviders = messageProviders; _staffRepository = staffRepository; }
public CommentService(IPushNotificationProvider pushNotificationProvider) { UnitOfWork = new CoreUnitOfWork(); CommentBiz = new CommentBiz(UnitOfWork); NotificationBiz = new NotificationBiz(UnitOfWork); ContentBiz = new ContentBiz(UnitOfWork); PushNotification = pushNotificationProvider; }
public BlogService(IPushNotificationProvider pushNotificationProvider) { UnitOfWork = new CoreUnitOfWork(); BlogBiz = new BlogBiz(UnitOfWork); PublicationBiz = new PublicationBiz(UnitOfWork); TagBiz = new TagBiz(UnitOfWork); FriendBiz = new BlogLinkBiz(UnitOfWork); ContentBiz = new ContentBiz(UnitOfWork); VisitBiz = new VisitBiz(UnitOfWork); PushNotificationProvider = pushNotificationProvider; }
public NotificationsService(INotificationsRepository notificationsRepository, IPushNotificationProvider pushNotificationProvider, IStaffRepository staffRepository, IStudentRepository studentRepository, ITranslationProvider translationProvider) { _notificationsRepository = notificationsRepository; _pushNotificationProvider = pushNotificationProvider; _studentRepository = studentRepository; _staffRepository = staffRepository; _translationProvider = translationProvider; }
protected virtual IPushNotificationProvider CreateProviderInstance(string className, string settings) { Type classType = Type.GetType(className); IPushNotificationProvider providerInstance = null; if (classType != null) { string assemblyQualifiedName = classType.AssemblyQualifiedName; providerInstance = ClassFactory.ForceGet <IPushNotificationProvider>(assemblyQualifiedName, new ConstructorArgument("settings", settings)); } return(providerInstance); }
public virtual void Send(Guid sysAdminUnitId, string title, string message, Dictionary <string, string> additionalData) { if (!_userConnection.GetIsFeatureEnabled("UseMobilePushNotifications")) { return; } EntitySchema schema = _userConnection.EntitySchemaManager.GetInstanceByName("PushNotificationToken"); var esq = new EntitySchemaQuery(schema); EntitySchemaQueryColumn tokenColumn = esq.AddColumn("Token"); EntitySchemaQueryColumn settingsColumn = esq.AddColumn("=Service.Settings"); EntitySchemaQueryColumn classNameColumn = esq.AddColumn("=Service.ClassName"); esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, "SysAdminUnit.Id", sysAdminUnitId)); esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, "Service.Enabled", true)); esq.IsDistinct = true; EntityCollection entityCollection = esq.GetEntityCollection(_userConnection); var providers = new Dictionary <string, IPushNotificationProvider>(); foreach (var item in entityCollection) { var token = item.GetTypedColumnValue <string>(tokenColumn.Name); var settings = item.GetTypedColumnValue <string>(settingsColumn.Name); var className = item.GetTypedColumnValue <string>(classNameColumn.Name); IPushNotificationProvider providerInstance = null; if (!providers.ContainsKey(className)) { providerInstance = CreateProviderInstance(className, settings); providers.Add(className, providerInstance); } else { providers.TryGetValue(className, out providerInstance); } var data = new PushNotificationData() { Token = token, Title = title, Message = message, AdditionalData = additionalData }; providerInstance.Send(data); } }
public AssignmentThresholdAlertProvider(IAlertRepository alertRepository, ICustomParametersProvider customParametersProvider, ITypesRepository typesRepository, IMessagingProvider messagingProvider, IUrlProvider urlProvider, IImageProvider imageProvider, ISMSProvider smsProvider, IPushNotificationProvider pushNotificationProvider, ITranslationProvider translationProvider) { _alertRepository = alertRepository; _customParametersProvider = customParametersProvider; _messagingProvider = messagingProvider; _urlProvider = urlProvider; _imageProvider = imageProvider; _smsProvider = smsProvider; _typesRepository = typesRepository; _pushNotificationProvider = pushNotificationProvider; _translationProvider = translationProvider; }
public UnreadMessagesAlertProvider(IAlertRepository alertRepository, ICustomParametersProvider customParametersProvider, ITypesRepository typesRepository, IMessagingProvider messagingProvider, IUrlProvider urlProvider, IImageProvider imageProvider, ISMSProvider smsProvider, IApplicationSettingsProvider applicationSettingsProvider, IPushNotificationProvider pushNotificationProvider, ITranslationProvider translationProvider) { _alertRepository = alertRepository; _customParametersProvider = customParametersProvider; _messagingProvider = messagingProvider; _urlProvider = urlProvider; _imageProvider = imageProvider; _smsProvider = smsProvider; _typesRepository = typesRepository; _applicationSettingsProvider = applicationSettingsProvider; _pushNotificationProvider = pushNotificationProvider; _translationProvider = translationProvider; }
public PushNotificationMessageProvider(IPushNotificationProvider pushNotificationProvider) { _pushNotificationProvider = pushNotificationProvider; }