From fb222513fd9122c969b1382091a82f8b84beb2c6 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Wed, 4 Apr 2012 15:08:58 +0000 Subject: [PATCH] Sorting players in room ignore case. --- .../main/java/com/gempukku/lotro/chat/ChatRoom.java | 12 +++++++++--- .../com/gempukku/lotro/chat/ChatRoomMediator.java | 7 ++----- .../java/com/gempukku/lotro/server/ChatResource.java | 8 ++++---- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoom.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoom.java index d371b0211..c1c047c9f 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoom.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoom.java @@ -5,7 +5,13 @@ import java.util.*; public class ChatRoom { private int _maxMessageHistoryCount = 150; private LinkedList _lastMessages = new LinkedList(); - private Map _chatRoomListeners = new HashMap(); + private Map _chatRoomListeners = new TreeMap( + new Comparator() { + @Override + public int compare(String o1, String o2) { + return o1.compareToIgnoreCase(o2); + } + }); public ChatRoom() { } @@ -40,8 +46,8 @@ public class ChatRoom { postMessage("System", playerId + " left the room", false); } - public Set getUsersInRoom() { - return new TreeSet(_chatRoomListeners.keySet()); + public Collection getUsersInRoom() { + return new ArrayList(_chatRoomListeners.keySet()); } private void shrinkLastMessages() { diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java index a9dff29f4..390e01d5f 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java @@ -2,10 +2,7 @@ package com.gempukku.lotro.chat; import com.gempukku.lotro.game.GatheringChatRoomListener; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; public class ChatRoomMediator { private ChatRoom _chatRoom = new ChatRoom(); @@ -70,7 +67,7 @@ public class ChatRoomMediator { } } - public synchronized Set getUsersInRoom() { + public synchronized Collection getUsersInRoom() { return _chatRoom.getUsersInRoom(); } } diff --git a/gemp-lotr/gemp-lotr-web/src/main/java/com/gempukku/lotro/server/ChatResource.java b/gemp-lotr/gemp-lotr-web/src/main/java/com/gempukku/lotro/server/ChatResource.java index a119ca125..2aa7fd5d2 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/java/com/gempukku/lotro/server/ChatResource.java +++ b/gemp-lotr/gemp-lotr-web/src/main/java/com/gempukku/lotro/server/ChatResource.java @@ -17,8 +17,8 @@ import javax.ws.rs.core.Response; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; +import java.util.Collection; import java.util.List; -import java.util.Set; @Singleton @Path("/chat") @@ -42,7 +42,7 @@ public class ChatResource extends AbstractResource { List chatMessages = chatRoom.joinUser(resourceOwner.getName()); if (chatMessages == null) sendError(Response.Status.FORBIDDEN); - Set usersInRoom = chatRoom.getUsersInRoom(); + Collection usersInRoom = chatRoom.getUsersInRoom(); DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); @@ -80,7 +80,7 @@ public class ChatResource extends AbstractResource { if (chatMessages == null) sendError(Response.Status.FORBIDDEN); - Set usersInRoom = chatRoom.getUsersInRoom(); + Collection usersInRoom = chatRoom.getUsersInRoom(); DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); @@ -92,7 +92,7 @@ public class ChatResource extends AbstractResource { return doc; } - private void serializeChatRoomData(String room, List chatMessages, Set usersInRoom, Document doc) { + private void serializeChatRoomData(String room, List chatMessages, Collection usersInRoom, Document doc) { Element chatElem = doc.createElement("chat"); chatElem.setAttribute("roomName", room); doc.appendChild(chatElem);