public void Handle(SubmitPost submitPost) { var emailOfPoster = new EmailAddress(submitPost.EmailOfPoster); var discussionId = new DiscussionId(submitPost.DiscussionId); var discussion = _repository.GetById(discussionId); discussion.SubmitPost(emailOfPoster, submitPost.BodyText); _repository.Save(discussion); }
private void Apply(DiscussionOpened discussion) { Id = new DiscussionId(discussion.DiscussionId); _topic = new Topic(discussion.Topic); _participants = discussion.EmailsOfParticipants.Select(x => new Participant(new EmailAddress(x))).ToList(); _linkId = new LinkId(discussion.LinkId); _posts = new List<Post>(); }