that were using the old default (usually null) to use the new default.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3369 542714f4-19e9-0310-aa3c-eee0fc999fb1
together in one JVM and both interoperate with the AWT thread in a manner
so harmonious as to bring a tear to the eye. This was surprisingly much
easier that I expected, thanks to my eminently sensible initial design,
I'm sure. ;)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3360 542714f4-19e9-0310-aa3c-eee0fc999fb1
actually dispatching the event to subscribers. We can't trust anyone.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3308 542714f4-19e9-0310-aa3c-eee0fc999fb1
There is no more SafeInterval, instead Intervals can be constructed with a RunQueue to use for expiring.
PresentsDObjectMgr implements RunQueue.
Client has a getRunQueue() method to get the client side RunQueue.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3283 542714f4-19e9-0310-aa3c-eee0fc999fb1
both destroyed without any intervening event processing.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3186 542714f4-19e9-0310-aa3c-eee0fc999fb1
let's just not do it. We can accomplish our earlier goals, though with
slightly less distinction making capability, in a different way.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3050 542714f4-19e9-0310-aa3c-eee0fc999fb1
was once alive but is now gone. Catch attempts to start a transaction on a
destroyed object and log them as such. Made isDestroyed() and isActive()
final for wholly unfounded performance reasons.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3045 542714f4-19e9-0310-aa3c-eee0fc999fb1
stack trace if we're not going to rethrow the error.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2958 542714f4-19e9-0310-aa3c-eee0fc999fb1
listener tries to 'new int[Integer.MAX_VALUE]' or infinitely loop, they
will get the smack down and we will go on about our business.
If things have actually gone pear shaped and we are failing on every
event, we'll hit the 30 fatal events in 60 seconds cap and stick a fork in
ourselves.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2957 542714f4-19e9-0310-aa3c-eee0fc999fb1
milliseconds) and same every 100th event instead of profiling every event.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2951 542714f4-19e9-0310-aa3c-eee0fc999fb1
and refuse subscriptions to invalid oids (it's not out of the realm of
possibility that the clients were somehow subscribing to oid 0 and funny
things were happening).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2778 542714f4-19e9-0310-aa3c-eee0fc999fb1
by making these transient we can hopefully debug it more effectively if it
happens in the future.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2773 542714f4-19e9-0310-aa3c-eee0fc999fb1
and dobj thread until they're both empty (or it has been passed 50 times)
and then shuts the threads down.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2744 542714f4-19e9-0310-aa3c-eee0fc999fb1
they arrive at the client. Mmm... network efficiency++.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2396 542714f4-19e9-0310-aa3c-eee0fc999fb1
applied immediately on the authoritative copy of the object (the one on
the server). We already do this for all other object modifications (except
OidList which is kind of special anyway), but we should be wary of
potential wickosity.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2302 542714f4-19e9-0310-aa3c-eee0fc999fb1
processing invocation units. It needs a timer with much finer granularity
than one millisecond to be useful.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2223 542714f4-19e9-0310-aa3c-eee0fc999fb1
managers can participate, reporting lies, damned lies and useful
statistics. Initial participants include the client manager, the
connection manager and the distributed object manager.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1894 542714f4-19e9-0310-aa3c-eee0fc999fb1
that are dispatched over the network at once and processed all at once.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@979 542714f4-19e9-0310-aa3c-eee0fc999fb1
choke so that we don't choke if DObject.toString() chokes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@919 542714f4-19e9-0310-aa3c-eee0fc999fb1
objectAvailable() error dispatching to not incorrectly report a failure to
create an object.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@918 542714f4-19e9-0310-aa3c-eee0fc999fb1
up objects directly by oid. They, of course, must be on the server if they
are doing this.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@728 542714f4-19e9-0310-aa3c-eee0fc999fb1
because subscription no longer means receiving events.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@537 542714f4-19e9-0310-aa3c-eee0fc999fb1
with distributed objects rather than having a single handleEvent() by
which all subscribers are forced to hear about all events. Now one
subscribes separately and then adds onesself as any of a few types of
listener once they have access to the subscribed object reference.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@439 542714f4-19e9-0310-aa3c-eee0fc999fb1
changed to Presents and Party changed to Crowd. Whee!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@431 542714f4-19e9-0310-aa3c-eee0fc999fb1
the subscriber so that they don't throw monkey wrenches into anyone's
business.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@382 542714f4-19e9-0310-aa3c-eee0fc999fb1
InvocationDirector (please god let the renaming be done). Removed IntMap
and modified code to use samskivert's HashIntMap.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@375 542714f4-19e9-0310-aa3c-eee0fc999fb1
distributed object manager thread. These are slipped into the normal event
processing loop.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@222 542714f4-19e9-0310-aa3c-eee0fc999fb1
dispatch. Added code to abort object added events that are trying to add a
non-existent object to an oid list. Wrote test driver for this and
duplicate object add request handling.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@196 542714f4-19e9-0310-aa3c-eee0fc999fb1