aboutsummaryrefslogtreecommitdiffstats
path: root/src/de/gultsch/chat/entities/Conversation.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/gultsch/chat/entities/Conversation.java')
-rw-r--r--src/de/gultsch/chat/entities/Conversation.java67
1 files changed, 37 insertions, 30 deletions
diff --git a/src/de/gultsch/chat/entities/Conversation.java b/src/de/gultsch/chat/entities/Conversation.java
index 92d5bcba..2dd8a049 100644
--- a/src/de/gultsch/chat/entities/Conversation.java
+++ b/src/de/gultsch/chat/entities/Conversation.java
@@ -1,56 +1,62 @@
package de.gultsch.chat.entities;
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.UUID;
+import java.util.List;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
-public class Conversation implements Serializable {
+public class Conversation extends AbstractEntity {
private static final long serialVersionUID = -6727528868973996739L;
public static final int STATUS_AVAILABLE = 0;
public static final int STATUS_ARCHIVED = 1;
public static final int STATUS_DELETED = 2;
- private String uuid;
+
+ public static final String NAME = "name";
+ public static final String PHOTO_URI = "profilePhotoUri";
+ public static final String ACCOUNT = "accountUuid";
+ public static final String CONTACT = "contactJid";
+ public static final String STATUS = "status";
+ public static final String CREATED = "created";
+
private String name;
private String profilePhotoUri;
private String accountUuid;
private String contactJid;
private int status;
+ private long created;
- // legacy. to be removed
- private ArrayList<Message> msgs = new ArrayList<Message>();
+ private transient List<Message> messages;
public Conversation(String name, Uri profilePhoto, Account account,
String contactJid) {
- this(UUID.randomUUID().toString(), name, profilePhoto.toString(),
- account.getUuid(), contactJid, STATUS_AVAILABLE);
+ this(java.util.UUID.randomUUID().toString(), name, profilePhoto
+ .toString(), account.getUuid(), contactJid, System
+ .currentTimeMillis(), STATUS_AVAILABLE);
}
public Conversation(String uuid, String name, String profilePhoto,
- String accountUuid, String contactJid, int status) {
+ String accountUuid, String contactJid, long created, int status) {
this.uuid = uuid;
this.name = name;
this.profilePhotoUri = profilePhoto;
this.accountUuid = accountUuid;
this.contactJid = contactJid;
+ this.created = created;
this.status = status;
}
- public ArrayList<Message> getLastMessages(int count, int offset) {
- msgs.add(new Message("this is my last message"));
- return msgs;
+ public List<Message> getMessages() {
+ return messages;
}
- public String getName() {
- return this.name;
+ public void setMessages(List<Message> msgs) {
+ this.messages = msgs;
}
- public String getUuid() {
- return this.uuid;
+ public String getName() {
+ return this.name;
}
public String getProfilePhotoString() {
@@ -78,22 +84,23 @@ public class Conversation implements Serializable {
public ContentValues getContentValues() {
ContentValues values = new ContentValues();
- values.put("uuid", this.uuid);
- values.put("name", this.name);
- values.put("profilePhotoUri", this.profilePhotoUri);
- values.put("accountUuid", this.accountUuid);
- values.put("contactJid", this.contactJid);
- values.put("status", this.status);
+ values.put(UUID, uuid);
+ values.put(NAME, name);
+ values.put(PHOTO_URI, profilePhotoUri);
+ values.put(ACCOUNT, accountUuid);
+ values.put(CONTACT, contactJid);
+ values.put(CREATED, created);
+ values.put(STATUS, status);
return values;
}
public static Conversation fromCursor(Cursor cursor) {
- return new Conversation(
- cursor.getString(cursor.getColumnIndex("uuid")),
- cursor.getString(cursor.getColumnIndex("name")),
- cursor.getString(cursor.getColumnIndex("profilePhotoUri")),
- cursor.getString(cursor.getColumnIndex("accountUuid")),
- cursor.getString(cursor.getColumnIndex("contactJid")),
- cursor.getInt(cursor.getColumnIndex("status")));
+ return new Conversation(cursor.getString(cursor.getColumnIndex(UUID)),
+ cursor.getString(cursor.getColumnIndex(NAME)),
+ cursor.getString(cursor.getColumnIndex(PHOTO_URI)),
+ cursor.getString(cursor.getColumnIndex(ACCOUNT)),
+ cursor.getString(cursor.getColumnIndex(CONTACT)),
+ cursor.getLong(cursor.getColumnIndex(CREATED)),
+ cursor.getInt(cursor.getColumnIndex(STATUS)));
}
}