/// <inheritdoc/> public void AddServer(ServerIconDto serverIcon, IChatEntityRepositoryProxy <Server, ChatDbContext> repo) { var newServer = new Server(serverIcon); repo.Add(newServer); _unitOfWork.Submit(); }
/// <inheritdoc />> public void DeleteMessage(int messageId, IChatEntityRepositoryProxy <Message, ChatDbContext> repo) { var message = repo.Find(messageId); _requestValidator.IsChannelRequestValid(message.Channel, message.Channel.Server, _user, PermissionTypes.CanWrite); repo.Delete(message); _unitOfWork.Submit(); }
/// <inheritdoc/> public void DeleteServer(int serverId, IChatEntityRepositoryProxy <Server, ChatDbContext> repo) { var server = repo.Find(serverId); _requestValidator.IsServerRequestValid(server, _user, PermissionTypes.CanManageServer); repo.Delete(repo.Find(serverId)); _unitOfWork.Submit(); }
/// <inheritdoc/> public void DeleteChannel(int channelId, IChatEntityRepositoryProxy <Channel, ChatDbContext> repo) { var channel = repo.Find(channelId); _requestValidator.IsServerRequestValid(channel.Server, _user, PermissionTypes.CanManageChannels); repo.Delete(channel); _unitOfWork.Submit(); }
/// <inheritdoc/> public ServerDataDto GetServerData(int serverId, IChatDtoFactory <Server, ServerDataDto> dtoFactory, IChatEntityRepositoryProxy <Server, ChatDbContext> repoProxy) { var server = repoProxy.Find(serverId); //TODO validator, error handling return(dtoFactory.CreateDto(server)); }
public ChatControllerService(IChatRequestValidator requestValidator, IHttpContextAccessor httpContextAccessor, IChatEntityRepositoryProxy <ChatUser, ChatDbContext> userRepo) { _requestValidator = requestValidator; var token = (JwtSecurityToken)httpContextAccessor.HttpContext.Items["UserToken"]; _user = userRepo.Find(token.Id); }
public ChatHub(IChatHubService chatService, IChatEntityRepositoryProxy <Message, ChatDbContext> messageRepo, IChatEntityRepositoryProxy <Channel, ChatDbContext> channelRepo, IChatEntityRepositoryProxy <Server, ChatDbContext> serverRepo) { _chatService = chatService; _messageRepo = messageRepo; _channelRepo = channelRepo; _serverRepo = serverRepo; }
/// <inheritdoc/> public List <MessageDto> GetChannelMessages(int channelId, IChatDtoFactory <Message, MessageDto> dtoFactory, IChatEntityRepositoryProxy <Channel, ChatDbContext> channelRepo) { var channel = channelRepo.Find(channelId); _requestValidator.IsChannelRequestValid(channel, channel.Server, _user, PermissionTypes.CanView); //TODO Pagination, return 20-40 messages in one batch return(dtoFactory.CreateDtoList(channel.Messages)); }
public ChatHubService(EntityUnitOfWork unitOfWork, IChatRequestValidator requestValidator, HttpContextAccessor contextAccessor, IChatEntityRepositoryProxy <ChatUser, ChatDbContext> repo) { _unitOfWork = unitOfWork; _requestValidator = requestValidator; var token = (JwtSecurityToken)contextAccessor.HttpContext.Items["UserToken"]; _user = repo.Find(token.Id); }
/// <inheritdoc/> public void AddMessage(MessageDto message, IChatEntityRepositoryProxy <Message, ChatDbContext> messageRepo, IChatEntityRepositoryProxy <Channel, ChatDbContext> channelRepo) { var channel = channelRepo.Find(message.ChannelId); _requestValidator.IsChannelRequestValid(channel, channel.Server, _user, PermissionTypes.CanWrite); var newMessage = new Message(message, _user); messageRepo.Add(newMessage); _unitOfWork.Submit(); }
/// <inheritdoc/> public void AddChannel(ChannelIconDto channelIcon, IChatEntityRepositoryProxy <Channel, ChatDbContext> channelRepo, IChatEntityRepositoryProxy <Server, ChatDbContext> serverRepo) { var server = serverRepo.Find(channelIcon.ServerId); _requestValidator.IsServerRequestValid(server, _user, PermissionTypes.CanManageChannels); var newChannel = new Channel(channelIcon); channelRepo.Add(newChannel); _unitOfWork.Submit(); }