Ejemplo n.º 1
0
        public override Task <GetImageCommentsResponse> GetImageComments(AddUserImageRequest request, ServerCallContext context)
        {
            var comments = _userRepository.GetImageComments(request.Email, request.ImageName);
            var getImageCommentsResponse = new GetImageCommentsResponse();

            getImageCommentsResponse.Comments.AddRange(comments.Select(c => new CommentProto
            {
                Text      = c.Text,
                UserEmail = c.UserEmail,
            }));
            _logSenderService.SendMessages("user " + request.Email + " images " + request.ImageName + " comments were obtained");
            return(Task.FromResult(getImageCommentsResponse));
        }
Ejemplo n.º 2
0
        public override Task <EmptyMessagee> AddUserImage(AddUserImageRequest request, ServerCallContext context)
        {
            var user = new User {
                Email = request.Email
            };
            var image = new Image {
                Name = request.ImageName
            };

            _userRepository.AddUserImage(user, image);
            _logSenderService.SendMessages("the user " + user.Email + " added the image " + image.Name);
            return(Task.FromResult(new EmptyMessagee {
            }));
        }
        public async System.Threading.Tasks.Task <bool> AddUserImageAsync(string imageName, string userEmail)
        {
            var isValidUser = await ValidateUserByEmailAsync(userEmail);

            if (isValidUser)
            {
                var addUserImageRequest = new AddUserImageRequest
                {
                    Email     = userEmail,
                    ImageName = imageName
                };
                await _clientRepository.AddUserImageAsync(addUserImageRequest);
            }
            return(isValidUser);
        }
        public async System.Threading.Tasks.Task <string> GetImageCommentsAsync(string userEmail, string imageName)
        {
            var isValidUser = await ValidateUserByEmailAsync(userEmail);

            if (isValidUser)
            {
                var imagesResponse = await _clientRepository.GetUserImagesAsync(new AddUserRequest { UserEmail = userEmail });

                if (ValidateImageByName(imageName, imagesResponse.Images))
                {
                    var request = new AddUserImageRequest
                    {
                        Email     = userEmail,
                        ImageName = imageName,
                    };
                    var getImageCommentsResult = await _clientRepository.GetImageCommentsAsync(request);

                    return(ConvertCommentListToString(getImageCommentsResult.Comments));
                }
                return("Invalid image name");
            }
            return(WrongEmailMessage);
        }