Commit Graph

4199 Commits

Author SHA1 Message Date
Michael Bayne d9ee8b91d1 We want to hear about the exception as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5337 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-25 15:29:33 +00:00
Charlie Groves e1491dcd06 Add a generifying factory method
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5334 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-21 20:35:53 +00:00
Charlie Groves 80ca1dbc64 Fix broken javadoc links and params to kill my Eclipse warnings. This includes
importing receivers from their senders to satisfy their links.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5333 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-21 01:46:51 +00:00
Jamie Doornbos 495e29fa05 Actually append the creds. Why was I not surprised by creds=] when I tested this?
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5331 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-20 04:52:08 +00:00
Bruno Garcia c5bc67d66a Planting a flag on this landmine, change to equals() if desired
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5327 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-15 23:55:46 +00:00
Dave Hoover df2e316330 Pedanticism police.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5326 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-15 23:19:25 +00:00
Bruno Garcia f632356dfc Only go through getSuffix once, and don't call getResourceString more than necessary.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5325 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-15 22:41:38 +00:00
Bruno Garcia 29204b385d If the suffixed message key for integers is missing, fall back to the unsuffixed key instead of banking on the ".n" suffix.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5323 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-15 21:45:36 +00:00
Jamie Doornbos 172349abb3 Give a little bit of information about Client instances when one is logged. This is for the bureau
launcher which manages a lot of clients, but seems generally useful.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5322 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-14 20:53:35 +00:00
Michael Bayne 716f7ab956 Make it possible to find out if we're shutting down or not.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5321 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-13 23:02:21 +00:00
Michael Bayne 40e64e2cf9 Ray suggests we call it asSet() instead of toSet() since it's a view.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5320 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-13 20:49:02 +00:00
Michael Bayne ca56aa97aa Provide an immutable view of a DSet a Set for when you want to roll Java
Collections style.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5319 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-13 20:32:48 +00:00
Michael Bayne fcedbe90d7 Thread.dumpStack() circumvents whatever logging is configured and writes
directly to stderr. Logging an exception with the associated warning does the
right thing and logs the stack trace via the logging system.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5318 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-13 17:35:37 +00:00
Andrzej Kapolka b323bf6bf9 I'm not exactly sure, but it looks like this should be flagged as
a singleton.  At any rate, it fixes Project X, which we're 
supposed to demo soon.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5317 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-12 20:50:02 +00:00
Michael Bayne d293fe5140 Fixed comment.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5316 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-12 18:19:07 +00:00
Michael Bayne 6866f6b609 Allow things that requireEventThread() to proceed if they are called during the
server initialization phase. Only after the event thread is established is it
unsafe to be wild and wooly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5315 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-12 18:18:08 +00:00
Michael Bayne e137667f07 Updated some comments, added some sanity checks to registerDispatcher() and
clearDispatcher() as I saw some craziness in the wild.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5314 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-12 16:57:46 +00:00
Tom Conkling c1442d8b17 Include the Throwable in the warning here
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5313 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-12 00:51:01 +00:00
Nathan Curtis c9e73fd320 unused import patrol
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5312 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-11 22:41:58 +00:00
Michael Bayne 1d3122d11c Handle failure properly now that shutdown tries to finish up.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5307 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-11 20:19:28 +00:00
Michael Bayne 5c3b5e9af3 Finish off what's in our queue before allowing the writer to exit. This ensures
that the LogoffRequest is sent to the server even if we have one or more
pending messages on the writer's queue at the time of logoff().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5306 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-11 20:17:36 +00:00
Michael Bayne 421272f4f2 Basic framework for distributed chat channel system that does not use chat
channel distributed objects but rather resolves the location of all channel
participants on every message delivery so that we don't have to attempt the
very fragile process of having every server that hosts a channel participant
maintain a subscription to the chat channel object on another peer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5305 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-10 02:40:19 +00:00
Michael Bayne eda49af57b Let's just use a runnable there. Having the node action turns out not to be
super useful. If one really needs it they can keep a final reference around.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5304 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-10 02:16:54 +00:00
Michael Bayne 7481cdd5a1 Regenerated services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5303 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-10 01:22:56 +00:00
Michael Bayne 2cb05c165d A few things:
- switched to Google Base's Function interface instead of rolling our own
various function interfaces;
- added invokeNodeAction() that invokes directly on a single node with no
checking;
- added an onDropped callback that will be invoked if a node action fails to
match any nodes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5302 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-10 01:16:31 +00:00
Michael Bayne 8ba97d2f70 Switch NodeAction to use the Presents streaming system instead of
Serializable. I wanted to avoid having to declare a bazillion no argument
constructors, but it's too annoying to have to make all the Presents streamable
classes that one naturally wants to send between servers also Serializable.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5301 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-09 23:04:35 +00:00
Michael Bayne 01a39e500a No longer need this tracking.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5298 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 21:00:26 +00:00
Michael Bayne 3385e9ba4a It's not entirely obvious how we should respond to multiple calls to logoff()
fired in such rapid succession that we have not completed processing the first
call before the next one comes in. We could do the cumbersome thing and keep
track of an _isLoggingOff state but that is so inelegant that I can't bear to
do it. I'd rather just cope in the Presents code and put the onus on the caller
not to do wacky things like this.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5296 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 16:52:19 +00:00
Michael Bayne 294f0fd1f1 Keep a history of what we do with subscriptions so that we can get some insight
into the thousands of "Missing subscription in unmap" errors that we have been
getting as a matter of course.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5293 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-05 13:12:18 +00:00
Michael Bayne 5c664a2667 Report a bit more information in these strange edge cases.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5292 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-05 12:49:40 +00:00
Michael Bayne beadc8745c Check whether arg unwrapping will result in a cast to a generic type and in
that case, suppress unchecked warnings. We do this on the whole method because
doing it for each argument would vastly complicate things and we can be fairly
confident that this generated code will not have other dangerous casts added to
it that would be hidden by the suppression.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5291 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 21:02:15 +00:00
Nathan Curtis d3d3528d83 Fix another issue with the log message in here. That would have looked strange indeed, in the logs.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5290 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 18:49:42 +00:00
Nathan Curtis e14bbe5a02 the varargs logger is so fancy that it supplies "=" for us.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5289 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 18:16:08 +00:00
Michael Bayne 9ae87e7c2b Let's make that an else as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5288 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 18:12:28 +00:00
Michael Bayne 93cffda93f Actually Eclipse was telling us something useful. The point of that code was to
issue a warning if someone created a reader method or a writer method but not
both. Eclipse's static analysis helpfully pointed out that we'll never know if
someone fails to declare a reader but does declare a writer because of the way
method lookup fails. Since we want to actually detect that situation and
generate a helpful warnings, we restructure the code so that the static
analyzer is happy and developers asses are covered.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5286 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 18:09:55 +00:00
Nathan Curtis 1fafa17293 Dave added the @SuppressWarnings("unchecked") because his stricker warning system in Eclipse told
him (correctly) that some of the null checking there was not needed.  If you have that setting
off, however, Eclipse warns that the @SuppressWarnings itself is unneeded.  So, instead of freaking
out Eclipses of one persuasion or the other, lets just clean up the code and add an explanatory
comment.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5285 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 17:58:45 +00:00
Dave Hoover c24d78a0ea Super pedantic warning mode freaks out about the check in there since it really
knows some of those states of nullness can't exist, but the conditional
really reads nicely and conveys what's going on, so let's just suppress the warning.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5283 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-01 18:53:52 +00:00
Michael Bayne 29ada80ce5 Let's call a PlaceConfig a PlaceConfig.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5282 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-01 14:38:01 +00:00
Michael Bayne 0b6d823e8a Fixed ChainedResultListener declaration.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5281 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-01 13:19:24 +00:00
Par Winzell 3b032cacac Move PlayManager*.java from crowd.server to parlor.server.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5280 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-31 17:28:09 +00:00
Par Winzell b6b9786e17 We want to share delegates between GameManager games and AVRGameManager games, but AVRGameManager extends PlaceManager directly. This is the proposed solution: a PlayManager interface, and an associated PlaceManagerDelegate. I'm open for suggestions for better names.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5279 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-31 05:32:07 +00:00
Charlie Groves 2cdac9dfcb Need to include the service class when linking to a listener defined in it. This makes Eclipse happy. Javadoc emits warnings in the current form without the service class, in the new form with <service>.<listener> and also with <service>#<listener>. I just want to please javadoc, but I don't know how.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5278 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 18:16:12 +00:00
Charlie Groves f0c529bb19 generate a little less needless whitespace
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5277 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 17:21:25 +00:00
Dave Hoover efaea0660c Mark an override
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5276 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 17:19:58 +00:00
Michael Bayne bda7d04f4c Peskily, Eclipse and javac disagreed about whether this unchecked suppression
was necessary (javac claimed it was, Eclipse claimed it wasnt'). Fortunately,
we can do everything with Class<FooClient> methods that avoid the need for
supression entirely.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5275 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 13:05:16 +00:00
Michael Bayne 725f656197 Fixed a bunch of type safety bits pointed out by the latest version of Eclipse.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5274 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 12:58:51 +00:00
Michael Bayne ca4c5897fb Tidied up.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5273 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 09:32:48 +00:00
Tom Conkling 81dc030710 don't lazily create _isStreamableFieldPred
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5272 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 01:05:23 +00:00
Jamie Doornbos c17634f7a8 Removed illegal @link asdoc directive from service generation templates
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5271 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 00:20:13 +00:00
Tom Conkling 7a1ede64af Added a NotStreamable annotation. Streamable objects that have fields annotated with NotStreamable will not have those fields sent over the wire, at least by the default readObject()/writeObject() Streamer methods.
Currently, Streamer will skip fields marked transient for the purposes of the default streaming implementation, but 'transient' is also used by the Java serialization mechanism, and there are instances where a field in a Serializable, Streamable object can't be streamed but should be serialized.

I have a bunch of code to check in related to the game server sending stat updates to the world server, but I'm going to hold off on those changes until I get the go-ahead from the powers that be that this is an acceptable solution to the problem.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5270 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-30 00:04:06 +00:00