PresenceTemplate.java

 1package eu.siacs.conversations.entities;
 2
 3import android.content.ContentValues;
 4import android.database.Cursor;
 5
 6
 7public class PresenceTemplate extends AbstractEntity {
 8
 9	public static final String TABELNAME = "presence_templates";
10	public static final String LAST_USED = "last_used";
11	public static final String MESSAGE = "message";
12	public static final String STATUS = "status";
13
14	private long lastUsed = 0;
15	private String statusMessage;
16	private Presence.Status status = Presence.Status.ONLINE;
17
18	public PresenceTemplate(Presence.Status status, String statusMessage) {
19		this.status = status;
20		this.statusMessage = statusMessage;
21		this.lastUsed = System.currentTimeMillis();
22		this.uuid = java.util.UUID.randomUUID().toString();
23	}
24
25	private PresenceTemplate() {
26
27	}
28
29	@Override
30	public ContentValues getContentValues() {
31		ContentValues values = new ContentValues();
32		values.put(LAST_USED, lastUsed);
33		values.put(MESSAGE, statusMessage);
34		values.put(STATUS, status.toShowString());
35		values.put(UUID, uuid);
36		return values;
37	}
38
39	public static PresenceTemplate fromCursor(Cursor cursor) {
40		PresenceTemplate template = new PresenceTemplate();
41		template.uuid = cursor.getString(cursor.getColumnIndex(UUID));
42		template.lastUsed = cursor.getLong(cursor.getColumnIndex(LAST_USED));
43		template.statusMessage = cursor.getString(cursor.getColumnIndex(MESSAGE));
44		template.status = Presence.Status.fromShowString(cursor.getString(cursor.getColumnIndex(STATUS)));
45		return template;
46	}
47
48	public Presence.Status getStatus() {
49		return status;
50	}
51
52	public String getStatusMessage() {
53		return statusMessage;
54	}
55}