<commit_before>using System;
namespace Facebook.GraphApi {
  public class Post {
    public Post() {
    }
  }
}
<commit_msg>Publikování příspěvků na wall.<commit_after>using System;
using System.Collections.Generic;
using System.Linq;

namespace Facebook.GraphApi {

  public class Post {

    const string FeedPath = "/feed";

    readonly Graph graphApi;

    /// <summary>
    /// Initializes a new instance of the Post class.
    /// </summary>
    /// <param name="graphApi"></param>
    public Post(Graph graphApi) {
      this.graphApi = graphApi;
    }

    /// <summary>
    /// Gets or sets the message.
    /// </summary>
    public string Message { get; set; }

    /// <summary>
    /// Gets or sets the link to the picture included with this post.
    /// </summary>
    public string Picture { get; set; }

    /// <summary>
    /// Gets or sets the link attached to this post.
    /// </summary>
    public string Link { get; set; }

    /// <summary>
    /// Gets or sets the name of the link.
    /// </summary>
    public string Name { get; set; }

    /// <summary>
    /// Gets or sets the caption of the link.
    /// </summary>
    public string Caption { get; set; }

    /// <summary>
    /// A description of the link
    /// </summary>
    public string Description { get; set; }

    /// <summary>
    /// Gets or sets the source link attached to this post.
    /// </summary>
    public string Source { get; set; }

    /// <summary>
    /// Publishes post to profile's wall.
    /// </summary>
    /// <param name="profileId">Profile Id.</param>
    public void Publish(long profileId) {

      string path = String.Concat("/", profileId, FeedPath);
      var arguments = GetRequestArguments();

      graphApi.Post(path, arguments);
    }

    private IDictionary<string, object> GetRequestArguments() {

      return (from property in GetType().GetProperties()
              let key = property.Name.ToLower()
              let value = property.GetValue(this, null)
              select new { key, value }).
              ToDictionary(x => x.key, x => x.value);
    }
  }
}

{'fraction_non_alphanumeric': 0.13675213675213677, 'fraction_numerical': 0.0, 'mean_word_length': 2.0492040520984083, 'pattern_counts': {'":': 0, '<': 26, '<?xml version=': 0, '>': 28, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6064226', 'n_tokens_mistral': 611, 'n_tokens_neox': 592, 'n_words': 201}