/// <summary> /// Initializes a new instance of the <see cref="MustBeTeamMemberUserPolicyHandler"/> class. /// </summary> /// <param name="memoryCache">MemoryCache instance for caching authorization result.</param> /// <param name="botOptions">A set of key/value application configuration properties for activity handler.</param> /// <param name="memberValidationService">Provider to fetch group membership.</param> public MustBeTeamMemberUserPolicyHandler( IMemoryCache memoryCache, IOptions <BotSettings> botOptions, IMemberValidationService memberValidationService) { this.memoryCache = memoryCache; this.botOptions = botOptions ?? throw new ArgumentNullException(nameof(botOptions)); this.memberValidationService = memberValidationService; }
/// <summary> /// Initializes a new instance of the <see cref="MemberValidationController"/> class. /// </summary> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="securityGroupOptions">Security group configuration settings.</param> /// <param name="memberValidationService">Instance of MemberValidationService to validate member of a security group.</param> public MemberValidationController( TelemetryClient telemetryClient, ILogger <MemberValidationController> logger, IMemberValidationService memberValidationService, IOptions <SecurityGroupSettings> securityGroupOptions) : base(telemetryClient) { this.logger = logger; this.memberValidationService = memberValidationService; this.securityGroupOptions = securityGroupOptions; }
/// <summary> /// Initializes a new instance of the <see cref="ResourceController"/> class. /// </summary> /// <param name="unitOfWork">The instance of unit of work to access repository.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="logger">Logs errors and information.</param> /// <param name="usersService">Instance of user service to get user data.</param> /// <param name="resourceMapper">The instance of resource mapper class to work with models.</param> /// <param name="memberValidationService">Instance of MemberValidationService to validate member of a security group.</param> /// <param name="securityGroupOptions">Security group configuration settings.</param> public ResourceController( IUnitOfWork unitOfWork, TelemetryClient telemetryClient, ILogger <ResourceController> logger, IUsersService usersService, IResourceMapper resourceMapper, IMemberValidationService memberValidationService, IOptions <SecurityGroupSettings> securityGroupOptions) : base(telemetryClient) { this.unitOfWork = unitOfWork; this.logger = logger; this.resourceMapper = resourceMapper; this.usersService = usersService; this.memberValidationService = memberValidationService; this.securityGroupOptions = securityGroupOptions; }
/// <summary> /// Initializes a new instance of the <see cref="MustBeModeratorPolicyHandler"/> class. /// </summary> /// <param name="memberValidationService">Instance of member validation service to validate whether is valid user,</param> /// <param name="securityGroupOptions">Security group configuration settings.</param> public MustBeModeratorPolicyHandler(IMemberValidationService memberValidationService, IOptions <SecurityGroupSettings> securityGroupOptions) { this.memberValidationService = memberValidationService; this.securityGroupOptions = securityGroupOptions; }
/// <summary> /// Initializes a new instance of the <see cref="MustBeTeacherOrAdminUserPolicyHandler"/> class. /// </summary> /// <param name="memberValidationService">Instance of member validation service to validate whether is valid user,</param> /// <param name="securityGroupOptions">Security group configuration settings.</param> public MustBeTeacherOrAdminUserPolicyHandler(IMemberValidationService memberValidationService, IOptions <SecurityGroupSettings> securityGroupOptions) { this.memberValidationService = memberValidationService; this.securityGroupOptions = securityGroupOptions; }