From 52795a86643c5611036e9945e560525a12fc9d32 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Tue, 2 Jun 2009 20:59:58 +0000 Subject: [PATCH] Broke out speak handler creation so that we can customize it. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5812 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/crowd/server/PlaceManager.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/java/com/threerings/crowd/server/PlaceManager.java b/src/java/com/threerings/crowd/server/PlaceManager.java index 6cd72a4a0..5a4e84d05 100644 --- a/src/java/com/threerings/crowd/server/PlaceManager.java +++ b/src/java/com/threerings/crowd/server/PlaceManager.java @@ -261,8 +261,7 @@ public class PlaceManager // we usually want to create and register a speaker service instance that clients can use // to speak in this place if (shouldCreateSpeakService()) { - plobj.setSpeakService( - addDispatcher(new SpeakDispatcher(new SpeakHandler(plobj, this)))); + plobj.setSpeakService(addDispatcher(new SpeakDispatcher(createSpeakHandler(plobj)))); } // we'll need to hear about place object events @@ -726,6 +725,15 @@ public class PlaceManager buf.append(", config=").append(_config); } + /** + * Creates the speak handler for this place. Derived classes can customize the speak handler if + * they so desire. + */ + protected SpeakHandler createSpeakHandler (PlaceObject plobj) + { + return new SpeakHandler(plobj, this); + } + /** Listens for occupant updates. */ protected SetAdapter _bodyUpdater = new NamedSetAdapter(PlaceObject.OCCUPANT_INFO) {