@Keep public static class Type{ public static final int FACEBOOK = 0; public static final int TWITTER = 1; public static final int PASSWORD = 2; public static final int GOOGLE = 3; }
@Keep public class Type{ public static final int FOLLOWER = 0, FOLLOWS = 1; }
public static final int ORDER_DESC = 1; @Keep static Boolean DEBUG = false;
@Keep public ThreadMetaValue metaValueForKey (String key) { ArrayList<MetaValue> values = new ArrayList<>(); values.addAll(getMetaValues()); return (ThreadMetaValue) MetaValueHelper.metaValueForKey(key, values); }
@Keep public UserMetaValue metaValueForKey (String key) { ArrayList<MetaValue> values = new ArrayList<>(); values.addAll(getMetaValues()); return (UserMetaValue) MetaValueHelper.metaValueForKey(key, values); }
@Keep public void setMetaValue (String key, String value) { UserMetaValue metaValue = metaValueForKey(key); if (metaValue == null) { metaValue = StorageManager.shared().createEntity(UserMetaValue.class); metaValue.setUserId(this.getId()); getMetaValues().add(metaValue); } metaValue.setValue(value); metaValue.setKey(key); metaValue.update(); update(); }
@Keep public void setMetaValue (String key, String value) { ThreadMetaValue metaValue = metaValueForKey(key); if (metaValue == null) { metaValue = StorageManager.shared().createEntity(ThreadMetaValue.class); metaValue.setThreadId(this.getId()); getMetaValues().add(metaValue); } metaValue.setValue(value); metaValue.setKey(key); metaValue.update(); update(); }
/** Fetch messages list from the db for current thread, Messages will be order Desc/Asc on demand.*/ @Keep public List<Message> getMessagesWithOrder(int order, int limit) { QueryBuilder<Message> qb = daoSession.queryBuilder(Message.class); qb.where(MessageDao.Properties.ThreadId.eq(getId())); if(order == DaoCore.ORDER_ASC) { qb.orderAsc(MessageDao.Properties.Date); } else if(order == DaoCore.ORDER_DESC) { qb.orderDesc(MessageDao.Properties.Date); } // Making sure no null messages infected the sort. qb.where(MessageDao.Properties.Date.isNotNull()); if (limit > 0) { qb.limit(limit); } Query<Message> query = qb.build().forCurrentThread(); return query.list(); }