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
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
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
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
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
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
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
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
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
- 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
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
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
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
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
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
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
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
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
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
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