/// <summary> /// Initializes a new instance of the <see cref="ScrumStatusActivityHandler"/> class. /// </summary> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="options">A set of key/value application configuration properties.</param> /// <param name="scrumStorageProvider">Scrum storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumMasterStorageProvider">Scrum master storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="tokenHelper">Generating custom JWT token and retrieving access token for user.</param> /// <param name="cardHelper">Instance of class that handles card create/update helper methods.</param> /// <param name="activityHelper">Instance of class that handles Bot activity helper methods.</param> /// <param name="scrumHelper">Instance of class that handles scrum helper methods.</param> public ScrumStatusActivityHandler( ILogger <ScrumStatusActivityHandler> logger, IStringLocalizer <Strings> localizer, TelemetryClient telemetryClient, IOptions <ScrumStatusActivityHandlerOptions> options, IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IScrumMasterStorageProvider scrumMasterStorageProvider, ITokenHelper tokenHelper, CardHelper cardHelper, ActivityHelper activityHelper, ScrumHelper scrumHelper) { this.logger = logger; this.localizer = localizer; this.telemetryClient = telemetryClient; this.options = options ?? throw new ArgumentNullException(nameof(options)); this.appBaseUri = this.options.Value.AppBaseUri; this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.scrumMasterStorageProvider = scrumMasterStorageProvider; this.tokenHelper = tokenHelper; this.cardHelper = cardHelper; this.scrumHelper = scrumHelper; this.activityHelper = activityHelper; }
/// <summary> /// Initializes a new instance of the <see cref="ScrumHelper"/> class. /// </summary> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="scrumStorageProvider">Scrum storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumConfigurationStorageProvider">Scrum configuration storage provider to maintain data in Microsoft Azure table storage.</param> public ScrumHelper( ILogger <ScrumHelper> logger, IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IScrumConfigurationStorageProvider scrumConfigurationStorageProvider) { this.logger = logger; this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.scrumConfigurationStorageProvider = scrumConfigurationStorageProvider; }
/// <summary> /// Initializes a new instance of the <see cref="ScrumHelper"/> class. /// </summary> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="scrumStorageProvider">Scrum storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumMasterStorageProvider">Scrum master storage provider to maintain data in Microsoft Azure table storage.</param> public ScrumHelper( ILogger <ScrumHelper> logger, IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IScrumMasterStorageProvider scrumMasterStorageProvider) { this.logger = logger; this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.scrumMasterStorageProvider = scrumMasterStorageProvider; }
/// <summary> /// Initializes a new instance of the <see cref="ArchivalBackgroundService"/> class. /// BackgroundService class that inherits IHostedService and implements the methods related to sending notification tasks. /// </summary> /// <param name="scrumStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">An instance of scrum status storage provider.</param> /// /// <param name="graphUtility">Instance of graph utility helper.</param> /// <param name="exportHelper">Instance for creating data table and workbook.</param> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="microsoftAppCredentials">MicrosoftAppCredentials of bot.</param> /// <param name="options">A set of key/value application configuration properties.</param> public ArchivalBackgroundService( IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IGraphUtilityHelper graphUtility, ExportHelper exportHelper, ILogger <ArchivalBackgroundService> logger, MicrosoftAppCredentials microsoftAppCredentials, IOptions <ScrumStatusActivityHandlerOptions> options) { this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.graphUtility = graphUtility; this.exportHelper = exportHelper; this.logger = logger; this.microsoftAppCredentials = microsoftAppCredentials; this.options = options ?? throw new ArgumentNullException(nameof(options)); }
/// <summary> /// Initializes a new instance of the <see cref="ArchivalBackgroundService"/> class. /// BackgroundService class that inherits IHostedService and implements the methods related to sending notification tasks. /// </summary> /// <param name="scrumStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">An instance of scrum status storage provider.</param> /// /// <param name="graphUtility">Instance of graph utility helper.</param> /// <param name="exportHelper">Instance for creating data table and workbook.</param> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="options">A set of key/value application configuration properties.</param> /// <param name="exportOption">Configuration value to check whether to export scrum details.</param> public ArchivalBackgroundService( IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IGraphUtilityHelper graphUtility, ExportHelper exportHelper, ILogger <ArchivalBackgroundService> logger, IOptions <ScrumStatusActivityHandlerOptions> options, IOptionsMonitor <ExportOptions> exportOption) { this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.graphUtility = graphUtility; this.exportHelper = exportHelper; this.logger = logger; this.options = options ?? throw new ArgumentNullException(nameof(options)); this.exportOption = exportOption; }
/// <summary> /// Initializes a new instance of the <see cref="CardHelper"/> class. /// </summary> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="options">A set of key/value application configuration properties.</param> /// <param name="scrumHelper">Instance of class that handles scrum helper methods.</param> /// <param name="scrumStorageProvider">Scrum storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumStatusStorageProvider">Scrum status storage provider to maintain data in Microsoft Azure table storage.</param> /// <param name="scrumMasterStorageProvider">Scrum master storage provider to maintain data in Microsoft Azure table storage.</param> public CardHelper( ILogger <CardHelper> logger, IStringLocalizer <Strings> localizer, IOptions <ScrumStatusActivityHandlerOptions> options, ScrumHelper scrumHelper, IScrumStorageProvider scrumStorageProvider, IScrumStatusStorageProvider scrumStatusStorageProvider, IScrumMasterStorageProvider scrumMasterStorageProvider) { this.options = options ?? throw new ArgumentNullException(nameof(options)); this.appBaseUri = this.options.Value.AppBaseUri; this.logger = logger; this.localizer = localizer; this.scrumHelper = scrumHelper; this.scrumStorageProvider = scrumStorageProvider; this.scrumStatusStorageProvider = scrumStatusStorageProvider; this.scrumMasterStorageProvider = scrumMasterStorageProvider; }