diff --git a/src/java/com/threerings/crowd/chat/ChatMessageHandler.java b/src/java/com/threerings/crowd/chat/ChatMessageHandler.java index 7bd43e703..ab2b93474 100644 --- a/src/java/com/threerings/crowd/chat/ChatMessageHandler.java +++ b/src/java/com/threerings/crowd/chat/ChatMessageHandler.java @@ -1,5 +1,5 @@ // -// $Id: ChatMessageHandler.java,v 1.3 2001/10/12 19:30:44 mdb Exp $ +// $Id: ChatMessageHandler.java,v 1.4 2001/10/18 20:51:59 mdb Exp $ package com.threerings.crowd.chat; @@ -37,9 +37,7 @@ public class ChatMessageHandler implements PlaceManager.MessageHandler String message = (String)inargs[1]; // and generate a chat notification - Object[] outargs = new Object[] { source.username, message }; - MessageEvent nevt = new MessageEvent( - event.getTargetOid(), ChatService.SPEAK_NOTIFICATION, outargs); - CrowdServer.omgr.postEvent(nevt); + ChatProvider.sendChatMessage( + event.getTargetOid(), source.username, message); } } diff --git a/src/java/com/threerings/crowd/chat/server/ChatProvider.java b/src/java/com/threerings/crowd/chat/server/ChatProvider.java index ea21dc6a8..0c4d823ba 100644 --- a/src/java/com/threerings/crowd/chat/server/ChatProvider.java +++ b/src/java/com/threerings/crowd/chat/server/ChatProvider.java @@ -1,9 +1,11 @@ // -// $Id: ChatProvider.java,v 1.5 2001/10/11 04:07:51 mdb Exp $ +// $Id: ChatProvider.java,v 1.6 2001/10/18 20:51:59 mdb Exp $ package com.threerings.crowd.chat; +import com.threerings.presents.dobj.MessageEvent; import com.threerings.presents.server.InvocationProvider; + import com.threerings.crowd.data.BodyObject; import com.threerings.crowd.server.CrowdServer; @@ -35,4 +37,22 @@ public class ChatProvider sendResponse(source, invid, TELL_SUCCEEDED_RESPONSE); } + + /** + * Sends a chat notification to the specified place object originating + * with the specified speaker and with the supplied message content. + * + * @param placeOid the place to which to deliver the chat message. + * @param speaker the username of the user that generated the message + * (or some special speaker name for server messages). + * @param message the text of the chat message. + */ + public static void sendChatMessage ( + int placeOid, String speaker, String message) + { + Object[] outargs = new Object[] { speaker, message }; + MessageEvent nevt = new MessageEvent( + placeOid, ChatService.SPEAK_NOTIFICATION, outargs); + CrowdServer.omgr.postEvent(nevt); + } }