public CChatRoom(string initial, CChatUser user) { talker_list = new List <CChatUser> { user }; Initial = initial; }
public void enqueue_packet(CPacket message, CChatUser user) { lock (this.operation_lock) { this.user_operations_queue.Enqueue(message); this.loop_event.Set(); } }
public bool enter_the_room(string RoomName, CChatUser user) { if (!roomlist.ContainsKey(RoomName)) { return(false); } return(this.roomlist[RoomName].enter_chat_room(user)); }
public static void remove_user(CChatUser user) { //server_main.room_manager.destroy_room(user); lock (userlist) { userlist.Remove(user); } }
static void on_session_created(CUserToken token) { CChatUser user = new CChatUser(token); lock (userlist) { userlist.Add(user); } }
public int exit_chat_room(CChatUser user) { if (!talker_list.Contains(user)) { return(-10); } talker_list.Remove(user); return(talker_list.Count); }
public void broadcast_Except_Me(CPacket message, CChatUser user) { foreach (var item in talker_list) { if (item != user) { item.send(message); } } }
public bool enter_chat_room(CChatUser user) { if (talker_list.Contains(user)) { this.talker_list.Remove(user); } this.talker_list.Add(user); return(true); }
public bool create_chat_room(string roomName, string initial, CChatUser user) { if (roomlist.Count > 99 || roomlist.ContainsKey(roomName)) { return(false); } CChatRoom chatRoom = new CChatRoom(initial, user); roomlist.Add(roomName, chatRoom); return(true); }
public int exit_chat_room(string roomName, CChatUser user) { if (!roomlist.ContainsKey(roomName)) { return(-11); } int count = roomlist[roomName].exit_chat_room(user); if (count <= 0 && count != -10) { remove_room(roomName); } return(count); }
// public bool enter_chat_room(string roomName, CChatUser user) { return(room_manager.enter_the_room(roomName, user)); }
public bool create_chat_room(string roomName, string initial, CChatUser user) { return(room_manager.create_chat_room(roomName, initial, user)); }
public int exit_chat_room(string roomName, CChatUser user) { return(room_manager.exit_chat_room(roomName, user)); }