/// <summary> /// Initializes a new instance of the <see cref="MessagingExtensionHelper"/> class. /// </summary> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="userEventSearchService">The team post search service dependency injection.</param> /// <param name="options">A set of key/value application configuration properties for activity handler.</param> /// <param name="categoryRepository">The category storage provider dependency injection</param> public MessagingExtensionHelper( IStringLocalizer <Strings> localizer, IUserEventSearchService userEventSearchService, IOptions <BotSettings> options, ICategoryRepository categoryRepository) { this.localizer = localizer; this.userEventSearchService = userEventSearchService; this.applicationBasePath = options.Value.AppBaseUri; this.categoryRepository = categoryRepository; }
/// <summary> /// Initializes a new instance of the <see cref="MessagingExtensionHelper"/> class. /// </summary> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="userEventSearchService">The team post search service dependency injection.</param> /// <param name="options">A set of key/value application configuration properties for activity handler.</param> /// <param name="categoryRepository">The category storage provider dependency injection</param> public MessagingExtensionHelper( IStringLocalizer <Strings> localizer, IUserEventSearchService userEventSearchService, IOptions <BotSettings> options, ICategoryRepository categoryRepository) { options = options ?? throw new ArgumentNullException(nameof(options), "Bot settings cannot be null"); this.localizer = localizer; this.userEventSearchService = userEventSearchService; this.applicationBasePath = options.Value.AppBaseUri; this.categoryRepository = categoryRepository; }
/// <summary> /// Initializes a new instance of the <see cref="EventController"/> class. /// </summary> /// <param name="logger">The ILogger object which logs errors and information</param> /// <param name="telemetryClient">The Application Insights telemetry client</param> /// <param name="userEventSearchService">The user event search service helper dependency injection</param> /// <param name="userEventsHelper">The user events helper dependency injection</param> /// <param name="categoryHelper">Category helper for fetching based on Ids, binding category names to events</param> public EventController( ILogger <EventController> logger, TelemetryClient telemetryClient, IUserEventSearchService userEventSearchService, IUserEventsHelper userEventsHelper, ICategoryHelper categoryHelper) : base(telemetryClient) { this.logger = logger; this.userEventSearchService = userEventSearchService; this.userEventsHelper = userEventsHelper; this.categoryHelper = categoryHelper; }
/// <summary> /// Initializes a new instance of the <see cref="BackgroundNotificationHelper"/> class. /// BackgroundService class that inherits IHostedService and implements the methods related to sending notification tasks. /// </summary> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="notificationHelper">Helper to send notification in channels.</param> /// <param name="userEventSearchService">The user event search service to generate query and fetch results.</param> /// <param name="botOptions">A set of key/value application configuration properties for activity settings</param> /// <param name="localizer">The current culture's string localizer</param> /// <param name="userConfigurationRepository">The user repository for user related operations on storage</param> /// <param name="categoryHelper">Category helper to fetch and bind category name by Id.</param> public BackgroundNotificationHelper( ILogger <BackgroundNotificationHelper> logger, INotificationHelper notificationHelper, IUserEventSearchService userEventSearchService, IOptions <BotSettings> botOptions, IStringLocalizer <Strings> localizer, IUserConfigurationRepository userConfigurationRepository, ICategoryHelper categoryHelper) { this.logger = logger; this.notificationHelper = notificationHelper; this.userEventSearchService = userEventSearchService; this.botOptions = botOptions; this.localizer = localizer; this.userConfigurationRepository = userConfigurationRepository; this.categoryHelper = categoryHelper; }
/// <summary> /// Initializes a new instance of the <see cref="UserEventsHelper"/> class. /// </summary> /// <param name="eventRepository">Provides the methods for event related operations on storage.</param> /// <param name="eventSearchService">Search service to filter and search events.</param> /// <param name="userEventSearchService">Search service to filter and search events for end user.</param> /// <param name="userGraphHelper">Helper to use Microsoft Graph users api.</param> /// <param name="eventGraphHelper">Helper to use Microsoft Graph events api.</param> /// <param name="notificationHelper">Helper to send notifications to user and team.</param> /// <param name="categoryHelper">Helper to bind category name by Id.</param> /// <param name="lnDTeamConfigurationRepository">Team configuration repository for storing and updating team information.</param> /// <param name="botOptions">Represents a set of key/value application configuration properties for bot.</param> /// <param name="localizer">The current culture's string localizer.</param> public UserEventsHelper( IEventRepository eventRepository, IEventSearchService eventSearchService, IUserEventSearchService userEventSearchService, IUserGraphHelper userGraphHelper, IEventGraphHelper eventGraphHelper, INotificationHelper notificationHelper, ICategoryHelper categoryHelper, ILnDTeamConfigurationRepository lnDTeamConfigurationRepository, IOptions <BotSettings> botOptions, IStringLocalizer <Strings> localizer) { this.eventRepository = eventRepository; this.eventSearchService = eventSearchService; this.userEventSearchService = userEventSearchService; this.userGraphHelper = userGraphHelper; this.eventGraphHelper = eventGraphHelper; this.notificationHelper = notificationHelper; this.categoryHelper = categoryHelper; this.lnDTeamConfigurationRepository = lnDTeamConfigurationRepository; this.botOptions = botOptions; this.localizer = localizer; }