Revamped chat handling a bit:

- the ChatProvider is now a proper singleton rather than providing static
methods for everything (it is accessed through CrowdServer.chatprov)
- it can now be extended to create a custom UserMessage for tells (which can
contain avatar information on systems that want to show an avatar on the
receipt of a tell)
- the ChatProvider API was tidied up a bit as some methods had been addded over
time that were not sufficiently general purpose so their callers will be
changed to use the general purpose APIs.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4251 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2006-07-06 00:22:12 +00:00
parent ef86404ed8
commit 05cef39f63
7 changed files with 117 additions and 110 deletions
@@ -23,6 +23,7 @@ package com.threerings.crowd.peer.data;
import com.threerings.crowd.chat.client.ChatService;
import com.threerings.crowd.chat.data.ChatMarshaller;
import com.threerings.crowd.chat.data.UserMessage;
import com.threerings.crowd.peer.client.CrowdPeerService;
import com.threerings.presents.client.Client;
import com.threerings.presents.data.InvocationMarshaller;
@@ -43,12 +44,12 @@ public class CrowdPeerMarshaller extends InvocationMarshaller
public static final int DELIVER_TELL = 1;
// documentation inherited from interface
public void deliverTell (Client arg1, Name arg2, Name arg3, String arg4, ChatService.TellListener arg5)
public void deliverTell (Client arg1, UserMessage arg2, Name arg3, ChatService.TellListener arg4)
{
ChatMarshaller.TellMarshaller listener5 = new ChatMarshaller.TellMarshaller();
listener5.listener = arg5;
ChatMarshaller.TellMarshaller listener4 = new ChatMarshaller.TellMarshaller();
listener4.listener = arg4;
sendRequest(arg1, DELIVER_TELL, new Object[] {
arg2, arg3, arg4, listener5
arg2, arg3, listener4
});
}