private static Post GetPost(ISocialContent content, PostStreamReader postStreamReader = null)
        {
            var postReader = postStreamReader ?? ServiceLocator.Current.GetInstance <PostStreamReader>();
            var post       = postReader.GetPostByExternalId(content.ContentGuid.ToString());

            return(post);
        }
        public static IEnumerable <Comment> GetComments(this ISocialContent content)
        {
            var postReader = ServiceLocator.Current.GetInstance <PostStreamReader>();
            var post       = GetPost(content, postReader);

            return(post != null?postReader.GetComments(post.Id) : Enumerable.Empty <Comment>());
        }
        public static void AddComment(this ISocialContent content, Comment comment)
        {
            var postWriter = ServiceLocator.Current.GetInstance <PostWriter>();
            var post       = GetPost(content);
            var postId     = post != null ? post.Id : content.CreatePost(postWriter);

            postWriter.CreateComment(postId, comment);
        }
        internal static int CreatePost(this ISocialContent content, PostWriter postWriter = null)
        {
            var writer = postWriter ?? ServiceLocator.Current.GetInstance <PostWriter>();

            return(writer.CreatePost(null, null, content.ContentGuid.ToString()));
        }