public void CloseDiscussion(string tenantId, string discussionId, string authorId, string subject, string bodyText, IDiscussionCommandResult discussionCommandResult) { Discussion discussion = this._discussionRepository.Get(new TenantId(tenantId), new DiscussionId(discussionId)); Author author = this._collaboratorService.GetAuthorFrom(new TenantId(tenantId), authorId); Post post = discussion.Post(this._forumIdentityService, author, subject, bodyText); this._postRepository.Save(post); discussionCommandResult.SetResultingDiscussionId(discussionId); discussionCommandResult.SetResultingPostId(post.PostId.Id); }
public void PostToDiscussionInReplyTo(string tenantId, string discussionId, string replyToPostId, string authorId, string subject, string bodyText, IDiscussionCommandResult discussionCommandResult) { var discussion = this.discussionRepository.Get(new Tenant(tenantId), new DiscussionId(discussionId)); var author = this.collaboratorService.GetAuthorFrom(new Tenant(tenantId), authorId); var post = discussion.Post(this.forumIdentityService, author, subject, bodyText, new PostId(replyToPostId)); this.postRepository.Save(post); discussionCommandResult.SetResultingDiscussionId(discussionId); discussionCommandResult.SetResultingPostId(post.PostId.Id); discussionCommandResult.SetRresultingInReplyToPostId(replyToPostId); }