2019-03-11 15:14:37 +01:00
|
|
|
public class Tootle.API.Mention : GLib.Object {
|
2018-04-28 18:27:10 +02:00
|
|
|
|
2020-05-29 14:19:35 +02:00
|
|
|
public int64 id { get; construct set; }
|
|
|
|
public string username { get; construct set; }
|
|
|
|
public string acct { get; construct set; }
|
|
|
|
public string url { get; construct set; }
|
|
|
|
|
|
|
|
public Mention (Json.Object obj) {
|
|
|
|
Object (
|
|
|
|
id: int64.parse (obj.get_string_member ("id")),
|
|
|
|
username: obj.get_string_member ("username"),
|
|
|
|
acct: obj.get_string_member ("acct"),
|
|
|
|
url: obj.get_string_member ("url")
|
|
|
|
);
|
2018-04-28 18:27:10 +02:00
|
|
|
}
|
2019-03-11 15:14:37 +01:00
|
|
|
|
2020-05-29 14:19:35 +02:00
|
|
|
public Mention.from_account (Account account) {
|
|
|
|
Object (
|
|
|
|
id: account.id,
|
|
|
|
username: account.username,
|
|
|
|
acct: account.acct,
|
|
|
|
url: account.url
|
|
|
|
);
|
2018-04-28 18:27:10 +02:00
|
|
|
}
|
2019-03-11 15:14:37 +01:00
|
|
|
|
2018-10-30 16:57:37 +01:00
|
|
|
public Json.Node? serialize () {
|
|
|
|
var builder = new Json.Builder ();
|
|
|
|
builder.begin_object ();
|
|
|
|
builder.set_member_name ("id");
|
|
|
|
builder.add_string_value (id.to_string ());
|
|
|
|
builder.set_member_name ("username");
|
|
|
|
builder.add_string_value (username);
|
|
|
|
builder.set_member_name ("acct");
|
|
|
|
builder.add_string_value (acct);
|
|
|
|
builder.set_member_name ("url");
|
|
|
|
builder.add_string_value (url);
|
|
|
|
builder.end_object ();
|
|
|
|
return builder.get_root ();
|
|
|
|
}
|
2018-04-28 18:27:10 +02:00
|
|
|
|
|
|
|
}
|