/* * Created by Itzik Braun on 12/3/2015. * Copyright (c) 2015 deluge. All rights reserved. * * Last Modification at: 3/12/15 4:27 PM */ package com.braunster.chatsdk.dao.entities; import android.support.annotation.IntDef; import com.braunster.chatsdk.dao.BMessage; import com.braunster.chatsdk.dao.BUser; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Date; import java.util.List; /** * Created by braunster on 25/06/14. */ public abstract class BThreadEntity extends Entity{ @IntDef({Type.Private, Type.Public}) @Retention(RetentionPolicy.SOURCE) public @interface ThreadType {} public static class Type{ public static final int Private = 0; public static final int Public = 1; } public abstract Date lastMessageAdded(); /** Fetch messages list from the db for current thread, Messages will be order Desc/Asc on demand.*/ public abstract List<BMessage> getMessagesWithOrder(int order); public abstract boolean hasUser(BUser user); @ThreadType public abstract void setType(@ThreadType Integer type); public abstract List<BUser> getUsers(); public abstract String displayName(); public abstract Integer getType(); }