1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2025-09-10 18:59:41 +02:00

ChatState mostly code complete.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@6217 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Alex Wenckus 2006-11-23 21:10:59 +00:00 committed by alex
parent 10eda70a40
commit 88ea6cf037
7 changed files with 223 additions and 32 deletions

View file

@ -42,7 +42,7 @@ public class Chat {
private ChatManager chatManager;
private String threadID;
private String participant;
private final Set<PacketListener> listeners = new CopyOnWriteArraySet<PacketListener>();
private final Set<MessageListener> listeners = new CopyOnWriteArraySet<MessageListener>();
/**
* Creates a new chat with the specified user and thread ID.
@ -119,14 +119,15 @@ public class Chat {
*
* @param listener a packet listener.
*/
public void addMessageListener(PacketListener listener) {
public void addMessageListener(MessageListener listener) {
if(listener == null) {
return;
}
// TODO these references should be weak.
listeners.add(listener);
}
public void removeMessageListener(PacketListener listener) {
public void removeMessageListener(MessageListener listener) {
listeners.remove(listener);
}
@ -135,7 +136,7 @@ public class Chat {
*
* @return an unmodifiable collection of all of the listeners registered with this chat.
*/
public Collection<PacketListener> getListeners() {
public Collection<MessageListener> getListeners() {
return Collections.unmodifiableCollection(listeners);
}
@ -164,8 +165,8 @@ public class Chat {
// probably never had one.
message.setThread(threadID);
for (PacketListener listener : listeners) {
listener.processPacket(message);
for (MessageListener listener : listeners) {
listener.processMessage(this, message);
}
}
}