/// <summary> /// Initializes a new instance of the <see cref="CourseSetup"/> class. /// </summary> /// <param name="courseRepository">Course repository.</param> /// <param name="courseValidator">Course validator.</param> /// <param name="channelRepository">Channel repository.</param> /// <param name="memberRepository">Member repository.</param> /// <param name="tutorialGroupRepository">Tutorial group repository.</param> /// <param name="teamsMessageService">Teams message service.</param> /// <param name="tutorialGroupValidator">Tutorial group validator.</param> /// <param name="logger">Logger.</param> public CourseSetup( ICourseValidator courseValidator, ICourseRepository courseRepository, IChannelRepository channelRepository, IMemberRepository memberRepository, ITutorialGroupRepository tutorialGroupRepository, ITeamsMessageService teamsMessageService, ITutorialGroupValidator tutorialGroupValidator, ILogger <CourseSetup> logger) { this.courseValidator = courseValidator ?? throw new ArgumentNullException(nameof(courseValidator)); this.courseRepository = courseRepository ?? throw new ArgumentNullException(nameof(courseRepository)); this.channelRepository = channelRepository ?? throw new ArgumentNullException(nameof(channelRepository)); this.memberRepository = memberRepository ?? throw new ArgumentNullException(nameof(memberRepository)); this.tutorialGroupRepository = tutorialGroupRepository ?? throw new ArgumentNullException(nameof(tutorialGroupRepository)); this.teamsMessageService = teamsMessageService ?? throw new ArgumentNullException(nameof(teamsMessageService)); this.tutorialGroupValidator = tutorialGroupValidator ?? throw new ArgumentNullException(nameof(tutorialGroupValidator)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
/// <summary> /// Initializes a new instance of the <see cref="QBotService"/> class. /// </summary> /// <param name="questionValidator">Question validator.</param> /// <param name="answerValidator">Answer validator.</param> /// <param name="questionRespository">Question repository.</param> /// <param name="teamsMessageService">Teams message service.</param> /// <param name="courseReader">Course reader.</param> /// <param name="qnAService">QnA Service.</param> /// <param name="userReaderService">User profile reader service.</param> /// <param name="logger">Logger.</param> public QBotService( IQuestionValidator questionValidator, IAnswerValidator answerValidator, IQuestionRespository questionRespository, ITeamsMessageService teamsMessageService, ICourseReader courseReader, IQnAService qnAService, IUserReaderService userReaderService, ILogger <QBotService> logger) { this.questionValidator = questionValidator ?? throw new ArgumentNullException(nameof(questionValidator)); this.answerValidator = answerValidator ?? throw new ArgumentNullException(nameof(answerValidator)); this.questionRespository = questionRespository ?? throw new ArgumentNullException(nameof(questionRespository)); this.teamsMessageService = teamsMessageService ?? throw new ArgumentNullException(nameof(teamsMessageService)); this.courseReader = courseReader ?? throw new ArgumentNullException(nameof(courseReader)); this.qnAService = qnAService ?? throw new ArgumentNullException(nameof(qnAService)); this.userReaderService = userReaderService ?? throw new ArgumentNullException(nameof(userReaderService)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); }