public override Task <PostResponse> AddPost(PostRequest request, ServerCallContext context) { Post postToAdd = Post.Create(request.Description, request.Domain, DateTime.Now); if (request.Comments.Count > 0) { foreach (var comment in request.Comments) { postToAdd.AddComment(Comment.Create(comment.Text)); } } Post post = PostCommentAPI.AddPost(postToAdd); //PostResponse postResponse = _mapper.Map<PostResponse>(post); PostResponse postResponse = new PostResponse() { PostId = post.PostId.ToString(), Domain = post.Domain, Description = post.Description, Date = DateTimeOffset.Now.ToTimestamp() }; foreach (var comment in post.Comments) { postResponse.Comments.Add(new CommentResponse() { CommentId = comment.CommentId.ToString(), Text = comment.Text }); } return(Task.FromResult(postResponse)); }
public override Task <PostsRespose> GetAllPosts(Empty request, ServerCallContext context) { PostsRespose postsRespose = new PostsRespose(); foreach (var post in PostCommentAPI.GetAllPosts()) { postsRespose.Posts.Add(ConvertPostToPostResponse(post)); } return(Task.FromResult(postsRespose)); }
public override Task <PostResponse> GetPostById(Id request, ServerCallContext context) { Post post = PostCommentAPI.GetPostById(Guid.Parse(request.Id_)); if (post != null) { return(Task.FromResult(ConvertPostToPostResponse(post))); } return(Task.FromResult(new PostResponse())); }
public override Task <UniversalResponse> DeletePostById(Id request, ServerCallContext context) { try { PostCommentAPI.DeletePost(Guid.Parse(request.Id_)); } catch { return(Task.FromResult(new UniversalResponse() { Succes = false, ErrorMessage = String.Format("Not found post with id {0}", request.Id_) })); } return(Task.FromResult(new UniversalResponse() { Succes = true })); }