userHasLeft(); throw e; userHasLeft();
/** * Leave the chat room. */ public synchronized void leave() { // If not joined already, do nothing. if (!joined) { return; } // We leave a room by sending a presence packet where the "to" // field is in the form "roomName@service/nickname" Presence leavePresence = new Presence(Presence.Type.UNAVAILABLE); leavePresence.setTo(room + "/" + nickname); // Invoke presence interceptors so that extra information can be dynamically added for (Iterator it = presenceInterceptors.iterator(); it.hasNext();) { PacketInterceptor packetInterceptor = (PacketInterceptor) it.next(); packetInterceptor.interceptPacket(leavePresence); } connection.sendPacket(leavePresence); // Reset occupant information. occupantsMap = new HashMap(); nickname = null; joined = false; userHasLeft(); }
/** * Leave the chat room. */ public synchronized void leave() { // If not joined already, do nothing. if (!joined) { return; } // We leave a room by sending a presence packet where the "to" // field is in the form "roomName@service/nickname" Presence leavePresence = new Presence(Presence.Type.unavailable); leavePresence.setTo(room + "/" + nickname); // Invoke presence interceptors so that extra information can be dynamically added for (PacketInterceptor packetInterceptor : presenceInterceptors) { packetInterceptor.interceptPacket(leavePresence); } connection.sendPacket(leavePresence); // Reset occupant information. occupantsMap.clear(); nickname = null; joined = false; userHasLeft(); }
/** * Leave the chat room. */ public synchronized void leave() { // If not joined already, do nothing. if (!joined) { return; } // We leave a room by sending a presence packet where the "to" // field is in the form "roomName@service/nickname" Presence leavePresence = new Presence(Presence.Type.unavailable); leavePresence.setTo(room + "/" + nickname); // Invoke presence interceptors so that extra information can be dynamically added for (PacketInterceptor packetInterceptor : presenceInterceptors) { packetInterceptor.interceptPacket(leavePresence); } connection.sendPacket(leavePresence); // Reset occupant information. occupantsMap.clear(); nickname = null; joined = false; userHasLeft(); }
/** * Leave the chat room. */ public synchronized void leave() { // If not joined already, do nothing. if (!joined) { return; } // We leave a room by sending a presence packet where the "to" // field is in the form "roomName@service/nickname" Presence leavePresence = new Presence(Presence.Type.unavailable); leavePresence.setTo(room + "/" + nickname); // Invoke presence interceptors so that extra information can be dynamically added for (PacketInterceptor packetInterceptor : presenceInterceptors) { packetInterceptor.interceptPacket(leavePresence); } connection.sendPacket(leavePresence); // Reset occupant information. occupantsMap.clear(); nickname = null; joined = false; userHasLeft(); }
userHasLeft(); userHasLeft(); userHasLeft();
nickname = null; joined = false; userHasLeft();
nickname = null; joined = false; userHasLeft();
nickname = null; joined = false; userHasLeft();
nickname = null; joined = false; userHasLeft();