Commit Graph

5255 Commits

Author SHA1 Message Date
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
Ray Greenwell 3e5a63c1bc Command: contains bind() for wiring events up commands, without having to
create var-args functions or make your existing functions varargs so that
they can react to events.
This might turn into more. I already did a bunch of impl and then KISS since
we don't use the advanced shit yet. It might be nice to tie this more
closely to CommandButton, et al.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5300 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-08 02:12:57 +00:00
Mike Thomas aff425651c Stop eclipse copying .svn dirs to the output directory.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5299 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 23:07:25 +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 6bf19ba419 We need to tell the clients that we did logoff after we've actually shutdown
and clear out our socket. The DID_LOGOFF notification is sent out to the client
after we've sent our LOGOFF request to the server, so we need to be sure that
no other messages go to the server after the LOGOFF request otherwise we risk
the server generating spurious warnings (like it does currently in the
thousands daily).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5297 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 20:58:16 +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
Ray Greenwell 4f0e41d971 Actually, let's do that this way.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5295 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 03:13:37 +00:00
Ray Greenwell e82f938d7c Allow the chat-clearing behavior to be overridden.
On msoy you "log off" when you switch servers, which I think
we need to change, but... that's a bigger change.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5294 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 03:03:18 +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 aba13e5718 Oops, that's tests not test.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5287 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 18:11:01 +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
Michael Bayne 024e112796 More output fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5284 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-04 17:47:36 +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
Jamie Doornbos 97e91dbb84 Restored the old setCommandGenerator function for the test client, it was accidentally blown away when timeouts got added
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5269 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-28 17:28:44 +00:00
Dave Hoover 8a8b615f9d Clean up some warnings I'm getting in super-pedantic mode.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5268 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-28 17:23:07 +00:00
Michael Bayne 93fb7b01f7 Fixed some unused variables, unused imports, type variable hiding, tricky
generic array type handling and other niggling bits.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5267 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-26 20:40:20 +00:00
Jamie Doornbos 4fab6bb71a Reset a bureau if its launcher does not connect back in a timely fashion
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5266 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-25 22:58:03 +00:00
Jamie Doornbos 4a5f474183 Tidied up registry log message, line lengths and use of static final int instead of an enum
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5265 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-25 22:15:56 +00:00
Nathan Curtis 79d7d60770 MDB would prefer that we ignore these via .subversion/config, rather than svn:ignore.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5264 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-25 17:28:20 +00:00