package chat.module; import java.util.ArrayList; import java.util.List; import java.util.UUID; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import chat.module.entity.Group; import chat.module.entity.FriendRequest; import chat.module.entity.Member; import chat.module.entity.MessageRecord; import chat.user.User; import cn.wildfirechat.proto.WFCMessage; import cn.wildfirechat.proto.WFCMessage.UserRequest; import frame.object.data.DataObject; import frame.object.data.Entity; import frame.object.data.ID; public class FriendRequstBucket extends Bucket { private static FriendRequstBucket instance; private static final Logger LOG = LoggerFactory.getLogger(FriendRequstBucket.class); public static synchronized FriendRequstBucket getInstance() { if (instance == null) { instance = new FriendRequstBucket(); } return instance; } public static String getUUID() { UUID uuid = UUID.randomUUID(); String str = uuid.toString(); str = str.replace("-", ""); return str; } public void createFriendRequest(String userId, WFCMessage.AddFriendRequest request, long[] head) throws Exception { //1. get group from cache FriendRequest friendRequest = getOne(userId); //2. create new group if (friendRequest == null) { friendRequest = new FriendRequest(userId, request.getTargetUid()); friendRequest.load(request); createOneFriendRequest(friendRequest); addOne(userId, friendRequest); } //3. create hello message //MessageRecord record = MessageRecord.getTextInstance(sender.getName() + "拉你入群", sender); //friendGroup.addOneMessage(record, sender); //4. send message to members // friendGroup.publishOneMessage(record, sender, true, content); //5. return } private void createOneFriendRequest(FriendRequest friendRequest) throws Exception { DataObject dataObject; Entity entity; //1. insert group dataObject = DataObject.getInstance("friend_request"); entity = dataObject.newEntity(); friendRequest.pushTo(entity); dataObject.insertToDataBase(entity); } }