Commit Graph

5614 Commits

Author SHA1 Message Date
Michael Bayne d67bcc5e01 Track more accurately whether or not we're switching servers and publish that
in the ClientEvent that is sent out with all will/didLogon and will/didLogoff
notifications.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5681 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-05 23:56:02 +00:00
Michael Bayne 5bd1ef9d8c Use new isTainted and untaint methods.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5680 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-05 01:22:49 +00:00
Ray Greenwell aa0bb22527 Added keys() and values() to Array-ificate Object/Dictionary properties.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5679 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-05 01:03:06 +00:00
Dave Hoover 7cd3f69ff6 Speeling
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5678 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-04 21:33:49 +00:00
Ray Greenwell 1566d00c75 These should all be immutable.
Hopefully nothing was setting the values.
If so, maybe we'll see compile-time errors/warnings.
Maybe.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5677 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-03 22:30:15 +00:00
Ray Greenwell 07a42c7364 Added a note. It's not a complete adobe fuck-up, as it works in
test cases I've made, it just doesn't work in *other instances*,
which I haven't yet been able to control for.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5676 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-03 22:26:18 +00:00
Michael Bayne d4f1e7763c Send our auth request directly instead of running it through the queue. Also
log our boot groups to make it easier to distinguish which "server" we're
logging onto.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5675 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-27 03:13:08 +00:00
Ray Greenwell 1b585febf9 Tighten this up a bit.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5674 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-26 00:42:26 +00:00
Ray Greenwell 64b6df7dfa It's another "Jesus, really Adobe?" commit message!
Apparently they enhanced AMF3 encoding in flash 10. Dictionaries
seem to be encoded differently. I'm sure they thought that they
could sneak this in because it's backwards-compatible, but they
thought wrong. If a Flash 10 client encodes a Dictionary, it
can't be read by a flash 9 client because it's not forwards-compatible.

If you change the spec, you gotta change the version number, because
this shit might be persistent.

So: work around it. Might be sketchy. Let's keep an eye on it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5673 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-26 00:24:23 +00:00
Ray Greenwell ad09bec805 Allow whether we're persisting to be queried.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5672 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-25 04:39:56 +00:00
Ray Greenwell 63181c6fc1 Allow to be constructed in, and flipped between, storing
preferences or just providing a runtime place for them to live.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5671 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-25 04:33:55 +00:00
Andrzej Kapolka 028b53df68 If a message is too big to be sent as a datagram, fall back to
sending it on the stream.  However, also increase the maximum 
datagram size.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5670 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-24 22:58:22 +00:00
Ray Greenwell 849aeed79c Me wrap you long line.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5669 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-24 02:25:02 +00:00
Dave Hoover b6c130c91b We don't yet throw an exception here in AdminProvider (yet), but I want to downstream
in yohoho's overriden version of this, so announce we're capable of it here.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5664 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-23 21:59:32 +00:00
Dave Hoover 41003c6059 Widen/remove unused variable
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5663 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-23 21:53:18 +00:00
Par Winzell fe357a5099 Give bureau sessions their own classes, and use it react immediately to disconnects. When a Thane instance dies, we want the game to shut down immediately. There's no going back from that.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5662 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-20 21:41:56 +00:00
Michael Bayne ba7a7af8d3 Sanity++. In theory this is functionally equivalent.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5661 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-19 21:08:07 +00:00
Michael Bayne 0650c074b3 Actually clearSession() can be called from any thread.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5660 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-18 23:08:13 +00:00
Michael Bayne e01c8b0635 Separate the reporting of session end to observers from clearing out our
internal bits. Only report that a session ended if we reported that it started,
but always clear out our bits when a session is shutting down.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-18 23:06:32 +00:00
Ray Greenwell 302665c65a Added loadClasses(), for convenience of the common pattern of loading
stuff into an ApplicationDomain.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5658 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-18 19:38:55 +00:00
Michael Bayne 6839b98d4d Oh the bugs we find when we reinstate preconditions that were foolishly removed
by yours truly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5657 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 21:57:11 +00:00
Michael Bayne f75d810a92 Now that the PresentsSession reports its authname type, we can skip it in a few
of these places.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5656 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 03:08:16 +00:00
Michael Bayne 1f6f8edeb9 Allow custom BodyLocators to be provided to different PlaceManagers. Twisty
maze of passages!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5655 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 03:08:01 +00:00
Michael Bayne 31d09fcd14 Disambiguate custom auth names.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5654 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 02:51:55 +00:00
Michael Bayne 9a4f2edc5d We can just inject the injector.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5653 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 02:51:34 +00:00
Jamie Doornbos c5b7379dea Modernized logging of safe object manager
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5652 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-11 21:51:52 +00:00
Mike Thomas 1d9c2802ea Let's handle shorts and bytes too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5651 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-06 21:29:08 +00:00
Tom Conkling bb9f068782 commentfix
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5650 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-06 21:24:41 +00:00
Michael Bayne 65f4810832 Nixed unused import.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5649 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-03 01:43:14 +00:00
Par Winzell 3171bc1ff4 Change the behaviour of the NameUpdater to play nicely with Name implementations where equal() does not depend on display name. Write cumbersome TODO comment.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5648 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-02 22:03:26 +00:00
Michael Bayne 4912d22b90 Widening, made a note about why we don't set _shutdownRequested.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5647 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-01 22:53:55 +00:00
Ray Greenwell 02d97ddec1 Allow a preconfigured URLRequest to be passed in.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5646 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-30 00:12:22 +00:00
Ray Greenwell 5c26798d10 Revert to targetting 9.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5645 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-29 20:29:22 +00:00
Ray Greenwell ca5aad1360 Updated to target flash 10.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5644 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-28 22:28:15 +00:00
Dave Hoover ef4ee0ac1e Let's teach GenReceiverTask to cope with inner classes the same way
GenServiceTask already does.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5643 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-27 01:45:19 +00:00
Jamie Doornbos a3d08aaa2d Oops, missed this little guy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 16:54:08 +00:00
Jamie Doornbos 00954dff5b Stop spamming the log file with these warnings. The code does nothing to prevent them and they are happening all over the shop in msoy.
Was going to try and skip the call to ClientObserver.clientSessionDidEnd if it has not yet been started but there is not clear way to determine the state of a session. It is shared between three different maps in ClientManager and PresentsSession and movement between the states is too complicated, at least for tomorrow's release.

[jamie@whirled1 /export/msoy]$ grep "Requested to release unmapped" log/world-server.log.2009-01-20 |wc -l
     830
[jamie@whirled1 /export/msoy]$ grep "Unregistered client" log/world-server.log.2009-01-20 |wc -l
    1971
[jamie@whirled1 /export/msoy]$ grep "Different clients" log/world-server.log.2009-01-20 |wc -l
     362


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5641 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 06:46:00 +00:00
Jamie Doornbos ba600f771d Allow client resolution to bail out in an orderly fashion is a disconnection occurs
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5640 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 06:32:14 +00:00
Jamie Doornbos 2a1b047159 Fixed negative units per second value when total units is greater than about 2.2 million
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5639 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 23:46:53 +00:00
Jamie Doornbos 3372808a9a Proper GLPGL header
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5638 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 23:02:19 +00:00
Jamie Doornbos 9cbed63ac7 Share the Reporter implementation of PresentsInvoker so that the PresentsAuthInvoker is reported too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5637 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 22:50:28 +00:00
Ray Greenwell 46e048ab4a Change the default behavior of handleSuccess: if the listener
is a ConfirmListener, do it! Hopefully this doesn't fork anything up.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5636 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-17 02:21:44 +00:00
Ray Greenwell b2b8f57454 - Monitor logins to other nodes, boot any local sessions with the same
authentication name.
- Use new (ca. 2002) pattern of creating an overridable listener,
rather than making the whole class a listener.

Mdb told me to add this at the msoy level, but I think it belongs here.
Presents simply expects a user to be in one place.

It also occurs to me that we probably want something more sophisticated:
there may be unpersisted data connected to the session that should
be flushed prior to the session starting on another node. We may
want something like a lock when users log-in, so that other nodes
can terminate the session and flush any persistent data FIRST.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5635 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-15 23:19:02 +00:00
Ray Greenwell 9d28bdbeef Drive-by logging varargification.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5634 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-15 22:04:36 +00:00
Jamie Doornbos 44a4981d27 Stop trying to flush clients after the server shuts down
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5633 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-14 23:28:16 +00:00
Jamie Doornbos a99489e650 Aha! Fixed race condition in narya fundamentals introduced with guice (r5153). This was causing a very rare concurrent modification exception when a client would log on when another one was about to expire. The problem was revealed by the trace in the msoy log of the 2009/01/10.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5632 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-13 22:33:56 +00:00
Michael Bayne 96fb4752b3 Make it easy to determine how many (if any) nodes on which your function was
called.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5631 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 22:51:26 +00:00
Michael Bayne d273a550fa More session type reporting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5630 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 19:04:12 +00:00
Michael Bayne 4e980867cf No need to repeat ourselves.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5629 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 18:56:33 +00:00
Michael Bayne 06473a1a11 Fixed paths.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5628 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 18:56:21 +00:00