Commit Graph

171 Commits

Author SHA1 Message Date
Robert Zubeck 77ef41cb42 Separated out chat message listener functionality, and subsequent chat message
processing. This enables subclasses of ChatDirector to listen for their own
types of chat messages, but call the superclass to process them.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4810 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-08-10 20:33:03 +00:00
Michael Bayne 5a490043c4 Added support for switching Java fields to a different type in their
ActionScript counterparts.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4801 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-08-01 17:40:35 +00:00
Mike Thomas 638f8b6246 Break out registering the command handlers to its own function so subclasses can call it/override it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4796 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-31 22:44:02 +00:00
Michael Bayne 3f7705dfc2 Split SpeakProvider into SpeakHandler and SpeakUtil. SpeakProvider is now a
proper interface like all the other new invocation service backends.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4795 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-31 21:05:23 +00:00
Dave Hoover e53200e627 Huh. I could've sworn I'd bemoaned in the past that I couldn't use
the fancy for loops in a case like this, but apparently it DOES work.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4754 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-11 21:58:40 +00:00
Dave Hoover 26a2a6a052 Widen some, and break out chat histories a bit so that the server can
manually squirt messages into a chat history without actually sending
the message to the client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4753 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-11 21:34:41 +00:00
Ray Greenwell 1867645802 Did away with hackery where some chat types were initializing their own client info.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4750 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-10 03:04:35 +00:00
Ray Greenwell 8b85e8a940 Allow de-capitalizing to be turned off by subclasses.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4720 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-05-25 18:16:32 +00:00
Michael Bayne ae1e7dc4a8 Scratch that. The plot is thicker. I'll have to take the pain to support mixed
readObject()/no-readObject() havers otherwise everyone everywhere will have to
generate streamer methods which is way too big a PITA. Grumble.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4690 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-05-04 22:25:41 +00:00
Michael Bayne a60a71552a Generated readObject()/writeObject(), widened some things along the way.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4689 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-05-04 22:17:41 +00:00
Michael Bayne 1ca159fe34 Added isFailure().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4664 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-04-16 21:47:53 +00:00
Michael Bayne 2ec9d50b6f Dispatch tell failures via a TellFeedbackMessage so that we can easily route
them to the appropriate ChatDisplay when we're doing chat in IM-style
individual windows.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4663 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-04-16 21:42:18 +00:00
Ray Greenwell 5ed85d4967 A marker interface that can be implemented by components other than normal
texty-input components that wish to have the chat system leave their focus
alone.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4626 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-03-13 18:47:29 +00:00
Michael Bayne 09f0bee0f3 Yet more header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-24 00:39:27 +00:00
Michael Bayne ebc99935d5 If we're going to do this, I guess we're going to do it properly. Nixed the
notion of a global group (though we implicitly define one in InvocationCodes)
added a mechanism for directors (which generally handle the client side of
invocation services) to register their interest in bootstrap service groups so
that the whole goddamned complex business can happen magically behind the
scenes.

If you instantiate a director, it will automatically register interest in the
service group it needs and everything will work. If you don't use the director
code, you don't get the services and you can safely exclude all of that code
from your client even though the services are still in use on the server (and
presumably used by some other types of clients).

This is going to break all the builds, which I'll soon fix. Then I'll go write
all this in ActionScript. Yay!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4552 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-11 01:17:30 +00:00
Ray Greenwell f65729f635 Have messages know their own formatting string.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4496 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-01-02 22:51:51 +00:00
Ray Greenwell dca9072595 Changed the TellFeedbackMessage to be a special kind of UserMessage.
It was always a little special, since it's dispatched from the client, but
I want it to be handled like other messages so that we can recolor
different parts of the message as I do in metasoy.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4495 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-01-02 21:58:40 +00:00
Michael Bayne 679030dc2c Widened. Allow the chat mogrification to be turned off.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4494 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-12-23 19:33:18 +00:00
Michael Bayne 7cea2a7088 Added XLATE_MODES for the default modes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4493 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-12-22 02:45:05 +00:00
Ray Greenwell 509f61c83e Cruft removal.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4473 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-12-07 02:58:39 +00:00
Michael Bayne 5ae9307636 Factored the curse filter out into a reusable class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4446 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-11-09 00:24:22 +00:00
Michael Bayne 20d1e1d024 Allow chat displays to register themselves in a known order and to report to
one another whether they've already displayed a chat message.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4421 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-10-10 21:48:27 +00:00
Michael Bayne 20c0f0ff3d Regenerated with updated Marshaller and Dispatcher templates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4398 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-10-04 18:13:34 +00:00
Ray Greenwell 1ae508f3aa Removed the pointless InvocationCodes.SUCCESS, moved it to ChatCodes,
which was the only child class that used it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4328 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-16 18:38:39 +00:00
Mike Thomas e8cd7631fd Allow a message to specify the name to display for a user separate from the canonical username passed in the message as the speaker variable.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4313 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-09 22:26:38 +00:00
Michael Bayne 8df1c91699 Changed the weird-ass argument ordering for the UserMessage constructors. I'd
like to change the ordering for ChatMessage and its other derivations (the
bundle should precede the message) but that's more dangerous as the constructor
signature would not change.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4253 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-06 00:35:11 +00:00
Michael Bayne a3c86ec1d4 Make it easy to create a UserMessage for tells.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4252 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-06 00:27:44 +00:00
Michael Bayne 05cef39f63 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
2006-07-06 00:22:12 +00:00
Michael Bayne 6be44f5a65 Finished up the basic peer system and wired up the tell forwarding. In theory
it all works, now to test it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4249 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-05 22:48:32 +00:00
Michael Bayne bdadd2377e Behold, TAPOAFTSM! The Awesome Power Of A Fully Type-Safe Mothership.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4246 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-05 00:56:16 +00:00
Michael Bayne 0a5953bf17 Chipping away at proper type safety for all of the Narya code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4232 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-06-27 17:46:36 +00:00
Ray Greenwell 79c6427c21 StringBuffer -> StringBuilder.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4191 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-06-13 22:42:20 +00:00
Ray Greenwell 26c928fc45 Use the valueOf factory methods pretty much everywhere.
These are the preferred way to get instances of Boolean, Byte,
Short, Character, Integer, Long, Float, and Double object.
It's always made sense for Boolean objects, and with 1.5 these factory
methods were blessed as the proper way to get instances unless one
absolutely needed a distinct object.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4145 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-24 01:24:24 +00:00
Ray Greenwell 461e109462 Fixed error in the SpeakHandler that mdb checked in: the service
should not be propogated. If someone chooses crew chat but then enters
a /speak command, it indicates that they want to break out of the crew
chat channel.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4068 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-27 01:53:40 +00:00
Ray Greenwell e1c9d4bc53 Better fix for parsing error.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4065 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-26 21:37:28 +00:00
Mark Johnson 6436dc704c If there is no message component then just leave it null instead of
having substring throw an exception.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4062 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-26 20:46:02 +00:00
Ray Greenwell 177f996427 Tidied up the tell handler a bit:
- fixed quoted name parsing to not choke if the first token is just a quote.
- also fixed to not choke if the user types the message using some
  non-space whitespace characters.
- fixed history mistell erasing for multi-word usernames.
- use quotes in the history line only if the user used quotes.
- added hooks for easy subclassing


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4047 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-21 23:25:58 +00:00
Michael Bayne 00a84fb80a Mogrify broadcasts like other chat.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4042 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-21 08:11:30 +00:00
Michael Bayne 69e84fa9fb Added broadcast handler. Fixed bug in tell handler. Wired both up.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4041 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-21 07:55:30 +00:00
Michael Bayne 11412c9602 Implemented a standard /tell handler.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4040 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-21 07:43:38 +00:00
Michael Bayne 1a705e2b55 Type safety.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4011 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-11 22:04:10 +00:00
Ray Greenwell ccb77db4fa Removed unused cruft.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3946 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-15 00:31:22 +00:00
Ray Greenwell 852620bea4 Regenerated marshallers with new response-tracking code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3793 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-12-21 02:12:57 +00:00
Ray Greenwell 23087de145 Added a shutdown() method that removes us as a ChatFilter.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3776 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-12-06 00:54:02 +00:00
Ray Greenwell dc3cf4aa28 Added a new type of chat message: a UserSystemMessage is a system message
triggered by the activity of another user. The other username is provided
so that the message can be muted if desired.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3770 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-11-29 19:33:04 +00:00
Michael Bayne 176329e1ed Various updates to allow a system where a user's visible name is not the same
as their authentication name (which we leave in BodyObject.username). This
turns out to be simpler than the system we adopted for Yohoho wherein we
replace the player's user object after they select a character, but converting
to this sort of system is way more work than would be worth it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3758 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-11-10 23:18:58 +00:00
Michael Bayne 596d2a4708 blank() -> isBlank().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3749 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-11-09 04:00:16 +00:00
Elizabeth Fong eada0b7f50 r58@sally: elizabeth | 2005-10-25 03:59:59 -0700
Changed things around a bit to have the cheesy JabberChat run out of the box:
 * ChatDirector no longer freaks out when given null message bundles/managers.
 * MiCasa's ChatPanel is marked with a TODO item to stop passing in null
   messagebundles and messagemanagers to ChatDirector.
 * JabberApp and JabberClient have been adjusted to allow the user to specify
   which chatroom to join from the command line; I plan to implement this using
   BootstrapData when time permits.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3741 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-10-25 11:13:51 +00:00
Michael Bayne dd2468b140 Javadoc tidying up.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3725 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-10-08 22:21:19 +00:00
Ray Greenwell d5ec5675d7 Added a comment about possible return values.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3692 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-08-29 21:42:11 +00:00