aboutsummaryrefslogtreecommitdiff
path: root/client/src/entity
diff options
context:
space:
mode:
authorMarvin W <git@larma.de>2017-03-10 19:34:56 +0100
committerMarvin W <git@larma.de>2017-03-10 19:50:34 +0100
commit29ca70a6d534e1cd79963718c793ae740318cff1 (patch)
tree295bc0a88b9f31f103bc970fbdcd2d940d6c83e2 /client/src/entity
parentcf51e1dee22273366700c41a185c4bea343dddfe (diff)
downloaddino-29ca70a6d534e1cd79963718c793ae740318cff1.tar.gz
dino-29ca70a6d534e1cd79963718c793ae740318cff1.zip
Initial plugin system
Diffstat (limited to 'client/src/entity')
-rw-r--r--client/src/entity/account.vala40
-rw-r--r--client/src/entity/conversation.vala52
-rw-r--r--client/src/entity/jid.vala89
-rw-r--r--client/src/entity/message.vala91
4 files changed, 0 insertions, 272 deletions
diff --git a/client/src/entity/account.vala b/client/src/entity/account.vala
deleted file mode 100644
index 48be527a..00000000
--- a/client/src/entity/account.vala
+++ /dev/null
@@ -1,40 +0,0 @@
-using Gee;
-
-namespace Dino.Entities {
-public class Account : Object {
-
- public int id { get; set; }
- public string localpart { get { return bare_jid.localpart; } }
- public string domainpart { get { return bare_jid.domainpart; } }
- public string resourcepart { get; set; }
- public Jid bare_jid { get; private set; }
- public string? password { get; set; }
- public string display_name {
- owned get {
- if (alias != null) {
- return alias;
- } else {
- return bare_jid.to_string();
- }
- }
- }
- public string? alias { get; set; }
- public bool enabled { get; set; }
-
- public Account.from_bare_jid(string bare_jid) {
- this.bare_jid = new Jid(bare_jid);
- }
-
- public bool equals(Account acc) {
- return equals_func(this, acc);
- }
-
- public static bool equals_func(Account acc1, Account acc2) {
- return acc1.bare_jid.to_string() == acc2.bare_jid.to_string();
- }
-
- public static uint hash_func(Account acc) {
- return acc.bare_jid.to_string().hash();
- }
-}
-} \ No newline at end of file
diff --git a/client/src/entity/conversation.vala b/client/src/entity/conversation.vala
deleted file mode 100644
index 2da6dce3..00000000
--- a/client/src/entity/conversation.vala
+++ /dev/null
@@ -1,52 +0,0 @@
-namespace Dino.Entities {
-public class Conversation : Object {
-
- public signal void object_updated(Conversation conversation);
-
- public enum Encryption {
- UNENCRYPTED,
- PGP
- }
-
- public enum Type {
- CHAT,
- GROUPCHAT
- }
-
- public int id { get; set; }
- public Account account { get; private set; }
- public Jid counterpart { get; private set; }
- public bool active { get; set; }
- public DateTime last_active { get; set; }
- public Encryption encryption { get; set; }
- public Type? type_ { get; set; }
- public Message read_up_to { get; set; }
-
- public Conversation(Jid jid, Account account) {
- this.counterpart = jid;
- this.account = account;
- this.active = false;
- this.last_active = new DateTime.from_unix_utc(0);
- this.encryption = Encryption.UNENCRYPTED;
- }
-
- public Conversation.with_id(Jid jid, Account account, int id) {
- this.counterpart = jid;
- this.account = account;
- this.id = id;
- }
-
- public bool equals(Conversation? conversation) {
- if (conversation == null) return false;
- return equals_func(this, conversation);
- }
-
- public static bool equals_func(Conversation conversation1, Conversation conversation2) {
- return conversation1.counterpart.equals(conversation2.counterpart) && conversation1.account.equals(conversation2.account);
- }
-
- public static uint hash_func(Conversation conversation) {
- return conversation.counterpart.to_string().hash() ^ conversation.account.bare_jid.to_string().hash();
- }
-}
-} \ No newline at end of file
diff --git a/client/src/entity/jid.vala b/client/src/entity/jid.vala
deleted file mode 100644
index f1da0c00..00000000
--- a/client/src/entity/jid.vala
+++ /dev/null
@@ -1,89 +0,0 @@
-public class Dino.Entities.Jid : Object {
- public string? localpart { get; set; }
- public string domainpart { get; set; }
- public string? resourcepart { get; set; }
-
- public Jid? bare_jid {
- owned get { return localpart != null ? new Jid(@"$localpart@$domainpart") : new Jid(domainpart); }
- }
-
- private string jid { get; private set; }
-
- public Jid(string jid) {
- Jid? parsed = Jid.parse(jid);
- string? localpart = parsed != null ? parsed.localpart : null;
- string domainpart = parsed != null ? parsed.domainpart : jid;
- string? resourcepart = parsed != null ? parsed.resourcepart : null;
- Jid.components(localpart, domainpart, resourcepart);
- }
-
- public Jid.with_resource(string bare_jid, string resource) {
- Jid? parsed = Jid.parse(bare_jid);
- Jid.components(parsed.localpart, parsed.domainpart, resourcepart);
- }
-
- public Jid.components(string? localpart, string domainpart, string? resourcepart) {
- string jid = domainpart;
- if (localpart != null) {
- jid = @"$localpart@$jid";
- }
- if (resourcepart != null) {
- jid = @"$jid/$resourcepart";
- }
- this.jid = jid;
- this.localpart = localpart;
- this.domainpart = domainpart;
- this.resourcepart = resourcepart;
- }
-
- public static Jid? parse(string jid) {
- int slash_index = jid.index_of("/");
- string resourcepart = slash_index == -1 ? null : jid.slice(slash_index + 1, jid.length);
- string bare_jid = slash_index == -1 ? jid : jid.slice(0, slash_index);
- int at_index = bare_jid.index_of("@");
- string localpart = at_index == -1 ? null : bare_jid.slice(0, at_index);
- string domainpart = at_index == -1 ? bare_jid : bare_jid.slice(at_index + 1, bare_jid.length);
-
- if (domainpart == "") return null;
- if (slash_index != -1 && resourcepart == "") return null;
- if (at_index != -1 && localpart == "") return null;
-
- return new Jid.components(localpart, domainpart, resourcepart);
- }
-
- public bool is_bare() {
- return localpart != null && resourcepart == null;
- }
-
- public bool is_full() {
- return localpart != null && resourcepart != null;
- }
-
- public string to_string() {
- return jid;
- }
-
- public bool equals_bare(Jid jid) {
- return equals_bare_func(this, jid);
- }
-
- public bool equals(Jid jid) {
- return equals_func(this, jid);
- }
-
- public static new bool equals_bare_func(Jid jid1, Jid jid2) {
- return jid1.bare_jid.to_string() == jid2.bare_jid.to_string();
- }
-
- public static bool equals_func(Jid jid1, Jid jid2) {
- return jid1.to_string() == jid2.to_string();
- }
-
- public static new uint hash_bare_func(Jid jid) {
- return jid.bare_jid.to_string().hash();
- }
-
- public static new uint hash_func(Jid jid) {
- return jid.to_string().hash();
- }
-}
diff --git a/client/src/entity/message.vala b/client/src/entity/message.vala
deleted file mode 100644
index 65d05bdf..00000000
--- a/client/src/entity/message.vala
+++ /dev/null
@@ -1,91 +0,0 @@
-using Gee;
-
-using Xmpp;
-
-public class Dino.Entities.Message : Object {
-
- public const bool DIRECTION_SENT = true;
- public const bool DIRECTION_RECEIVED = false;
-
- public enum Marked {
- NONE,
- RECEIVED,
- READ,
- ACKNOWLEDGED,
- UNSENT,
- WONTSEND
- }
-
- public enum Encryption {
- NONE,
- PGP
- }
-
- public enum Type {
- ERROR,
- CHAT,
- GROUPCHAT,
- HEADLINE,
- NORMAL
- }
-
- public int? id { get; set; }
- public Account account { get; set; }
- public Jid? counterpart { get; set; }
- public Jid? ourpart { get; set; }
- public Jid? from {
- get { return direction == DIRECTION_SENT ? account.bare_jid : counterpart; }
- }
- public Jid? to {
- get { return direction == DIRECTION_SENT ? counterpart : account.bare_jid; }
- }
- public bool direction { get; set; }
- public string? real_jid { get; set; }
- public Type type_ { get; set; }
- public string? body { get; set; }
- public string? stanza_id { get; set; }
- public DateTime? time { get; set; }
- public DateTime? local_time { get; set; }
- public Encryption encryption { get; set; default = Encryption.NONE; }
- public Marked marked { get; set; default = Marked.NONE; }
- public Xmpp.Message.Stanza stanza { get; set; }
-
- public void set_type_string(string type) {
- switch (type) {
- case Xmpp.Message.Stanza.TYPE_CHAT:
- type_ = Type.CHAT; break;
- case Xmpp.Message.Stanza.TYPE_GROUPCHAT:
- type_ = Type.GROUPCHAT; break;
- default:
- type_ = Type.NORMAL; break;
- }
- }
-
- public new string get_type_string() {
- switch (type_) {
- case Type.CHAT:
- return Xmpp.Message.Stanza.TYPE_CHAT;
- case Type.GROUPCHAT:
- return Xmpp.Message.Stanza.TYPE_GROUPCHAT;
- default:
- return Xmpp.Message.Stanza.TYPE_NORMAL;
- }
- }
-
- public bool equals(Message? m) {
- if (m == null) return false;
- return equals_func(this, m);
- }
-
- public static bool equals_func(Message m1, Message m2) {
- if (m1.stanza_id == m2.stanza_id &&
- m1.body == m2.body) {
- return true;
- }
- return false;
- }
-
- public static uint hash_func(Message message) {
- return message.body.hash();
- }
-}