/// <summary> /// Initializes a new instance of the <see cref="GuestSessionController" /> class. /// </summary> /// <param name="repositoryFactory">The repository factory.</param> /// <param name="validatorLocator">The validator locator.</param> /// <param name="eventService">The event service.</param> /// <param name="loggerFactory">The logger.</param> /// <param name="emailSendingService"></param> /// <param name="serviceToServiceProjectApi"></param> /// <param name="userApi"></param> /// <param name="projectLobbyStateController"></param> /// <param name="serviceToServiceAccountSettingsApi">The API for Account/Tenant specific settings</param> /// <param name="synthesisObjectSerializer">The Synthesis object serializer</param> /// <param name="projectGuestContextService"></param> /// <param name="requestHeaders"></param> /// <param name="maxGuestsAllowedInProject"></param> public GuestSessionController( IRepositoryFactory repositoryFactory, IValidatorLocator validatorLocator, IEventService eventService, ILoggerFactory loggerFactory, IEmailSendingService emailSendingService, IProjectApi serviceToServiceProjectApi, IUserApi userApi, IProjectLobbyStateController projectLobbyStateController, ISettingApi serviceToServiceAccountSettingsApi, IObjectSerializer synthesisObjectSerializer, IProjectGuestContextService projectGuestContextService, IRequestHeaders requestHeaders, int maxGuestsAllowedInProject) { _guestSessionRepository = repositoryFactory.CreateRepository <GuestSession>(); _guestInviteRepository = repositoryFactory.CreateRepository <GuestInvite>(); _validatorLocator = validatorLocator; _eventService = eventService; _logger = loggerFactory.GetLogger(this); _projectLobbyStateController = projectLobbyStateController; _emailSendingService = emailSendingService; _serviceToServiceProjectApi = serviceToServiceProjectApi; _userApi = userApi; _serviceToServiceAccountSettingsApi = serviceToServiceAccountSettingsApi; _synthesisObjectSerializer = synthesisObjectSerializer; _projectGuestContextService = projectGuestContextService; _requestHeaders = requestHeaders; _maxGuestsAllowedInProject = maxGuestsAllowedInProject; }
public SessionEndedEventHandler( IGuestSessionController guestSessionController, IProjectLobbyStateController projectLobbyStateController, ILoggerFactory loggerFactory) { _guestSessionController = guestSessionController; _projectLobbyStateController = projectLobbyStateController; _logger = loggerFactory.GetLogger(this); }
/// <inheritdoc /> public ProjectLobbyStateModule(IMetadataRegistry metadataRegistry, IPolicyEvaluator policyEvaluator, ILoggerFactory loggerFactory, IProjectLobbyStateController projectLobbyStateController) : base(GuestServiceBootstrapper.ServiceNameShort, metadataRegistry, policyEvaluator, loggerFactory) { _projectLobbyStateController = projectLobbyStateController; CreateRoute("GetProjectLobbyState", HttpMethod.Get, $"{Routing.ProjectsRoute}/{{projectId:guid}}/{Routing.ProjectLobbyStatePath}", GetProjectLobbyStateAsync) .Description("Retrieves lobby state for a project.") .StatusCodes(HttpStatusCode.OK, HttpStatusCode.BadRequest, HttpStatusCode.Unauthorized, HttpStatusCode.Forbidden, HttpStatusCode.NotFound, HttpStatusCode.InternalServerError) .ResponseFormat(JsonConvert.SerializeObject(new ProjectLobbyState())); CreateRoute("RecalculateProjectLobbyState", HttpMethod.Put, $"{Routing.ProjectsRoute}/{{projectId:guid}}/{Routing.ProjectLobbyStatePath}", RecalculateProjectLobbyStateAsync) .Description("Recalculates the the lobby state of a project.") .StatusCodes(HttpStatusCode.OK, HttpStatusCode.BadRequest, HttpStatusCode.Unauthorized, HttpStatusCode.Forbidden, HttpStatusCode.NotFound, HttpStatusCode.InternalServerError) .ResponseFormat(ProjectLobbyState.Example()); }
/// <summary> /// Initializes a new instance of the <see cref="GuestSessionController" /> class. /// </summary> public ProjectGuestContextController( IRepositoryFactory repositoryFactory, IGuestSessionController guestSessionController, IProjectLobbyStateController projectLobbyStateController, IProjectGuestContextService projectGuestContextService, IProjectAccessApi serviceToServiceProjectAccessApi, IProjectApi serviceToServiceProjectApi, IUserApi userApi) { _guestSessionRepository = repositoryFactory.CreateRepository <GuestSession>(); _guestSessionController = guestSessionController; _projectLobbyStateController = projectLobbyStateController; _serviceToServiceProjectApi = serviceToServiceProjectApi; _serviceToServiceProjectAccessApi = serviceToServiceProjectAccessApi; _userApi = userApi; _projectGuestContextService = projectGuestContextService; }
public ProjectLobbyStateControllerTests() { _cacheSelectorMock.Setup(x => x[It.IsAny <CacheConnection>()]) .Returns(_cacheMock.Object); var repositoryFactoryMock = new Mock <IRepositoryFactory>(); repositoryFactoryMock .Setup(m => m.CreateRepository <GuestSession>()) .Returns(_guestSessionRepositoryMock.Object); repositoryFactoryMock .Setup(m => m.CreateRepository <GuestSession>()) .Returns(_guestSessionRepositoryMock.Object); _cacheMock .Setup(c => c.TryItemGetAsync(It.IsAny <string>(), typeof(ProjectLobbyState), It.IsAny <Reference <ProjectLobbyState> >())) .ReturnsAsync(true); _validatorMock .Setup(v => v.Validate(It.IsAny <object>())) .Returns(SuccessfulValidationResult); var validatorLocatorMock = new Mock <IValidatorLocator>(); validatorLocatorMock .Setup(m => m.GetValidator(It.IsAny <Type>())) .Returns(_validatorMock.Object); var loggerFactoryMock = new Mock <ILoggerFactory>(); loggerFactoryMock.Setup(m => m.Get(It.IsAny <LogTopic>())) .Returns(new Mock <ILogger>().Object); _target = new ProjectLobbyStateController(repositoryFactoryMock.Object, _cacheSelectorMock.Object, validatorLocatorMock.Object, _sessionServiceMock.Object, _projectApi.Object, _eventServiceMock.Object, loggerFactoryMock.Object, MaxNumberOfGuests); }
public ProjectCreatedEventHandler(ILoggerFactory loggerFactory, IProjectLobbyStateController projectLobbyStateController) { _logger = loggerFactory.GetLogger(this); _projectLobbyStateController = projectLobbyStateController; }