/// <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;
 }
示例#2
0
 /// <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;
 }
示例#3
0
 /// <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;
 }
示例#4
0
 /// <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;
 }