package chat.module.entity;
|
|
import chat.user.User;
|
import cn.wildfirechat.proto.WFCMessage;
|
import frame.object.data.DataObject;
|
import frame.object.data.Entity;
|
import frame.object.data.ID;
|
import frame.persist.NamedSQL;
|
import frame.persist.SQLRunner;
|
|
public class FriendShip {
|
|
private String id;
|
private String userid;
|
private String friendid;
|
private String statuscode;
|
//private FriendshipStatus status;
|
private String verifytext;
|
private long timestamp;
|
private FriendShip reverseInstance;
|
private WFCMessage.FriendRequest friendRequest;
|
|
public FriendShip() {}
|
|
public FriendShip(User user, String friendId, String status) {
|
this.id = ID.newValue();
|
this.userid = user.getId();
|
this.friendid = friendId;
|
this.statuscode = status;
|
this.verifytext = "我是" + user.getName();
|
this.timestamp = System.currentTimeMillis();
|
}
|
|
public void load(Entity entity) {
|
id = entity.getString("id");
|
userid = entity.getString("userid");
|
friendid = entity.getString("friendid");
|
//status = FriendshipStatus.parse(entity.getString("statuscode"));
|
statuscode = entity.getString("statuscode");
|
verifytext = entity.getString("verifytext");
|
timestamp = Long.parseLong(entity.getString("timestamp"));
|
}
|
|
public void pushTo(Entity entity) throws Exception {
|
entity.set("id", id);
|
entity.set("userid", userid);
|
entity.set("friendid", friendid);
|
entity.set("statuscode", statuscode);
|
entity.set("verifytext", verifytext);
|
entity.set("timestamp", timestamp);
|
}
|
|
public void addFriendShipToDataBase() {
|
try {
|
DataObject dataObject = DataObject.getInstance("friendship");
|
|
Entity entity = dataObject.newEntity();
|
pushTo(entity);
|
|
dataObject.insertToDataBase(entity);
|
} catch(Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
public void updateFriendShipToDataBase(String status) {
|
try {
|
DataObject dataObject = DataObject.getInstance("friendship");
|
|
Entity entity = dataObject.newEntity();
|
pushTo(entity);
|
entity.set("statuscode", status);
|
|
dataObject.updateToDataBase(entity);
|
} catch(Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
public synchronized FriendShip getReverseInstance() {
|
if (reverseInstance != null) {
|
return reverseInstance;
|
}
|
|
reverseInstance = new FriendShip();
|
|
reverseInstance.id = this.id;
|
reverseInstance.userid = this.friendid;
|
reverseInstance.friendid = this.userid;
|
reverseInstance.statuscode = this.statuscode;
|
reverseInstance.verifytext = this.verifytext;
|
reverseInstance.timestamp = this.timestamp;
|
|
return reverseInstance;
|
}
|
|
public String getId() {
|
return id;
|
}
|
|
public String getUserid() {
|
return userid;
|
}
|
|
public String getFriendid() {
|
return friendid;
|
}
|
|
public String getVerifytext() {
|
return verifytext;
|
}
|
|
public long getTimestamp() {
|
return timestamp;
|
}
|
|
public WFCMessage.FriendRequest getFriendRequest() {
|
return friendRequest;
|
}
|
|
public void setFriendRequest(WFCMessage.FriendRequest friendRequest) {
|
this.friendRequest = friendRequest;
|
}
|
|
}
|