Commit Graph

40 Commits

Author SHA1 Message Date
Michael Bayne 732c0aab41 Modified clock synchronization approach slightly so that we allow 5
seconds to pass in between ping/pong latency samples. Additionally, we
resync the clock every 10 minutes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2748 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-08 20:20:39 +00:00
Michael Bayne 7efc5dfc32 Make the auth response data available to interested parties.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2713 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-07-17 21:39:15 +00:00
Michael Bayne 5bccc8482c Report the computed server/client time differential.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2593 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-20 19:07:52 +00:00
Michael Bayne 91146a6805 Added support for registering, on a per class basis, a delay which will be
observed after the last subscriber of a matching distributed object has
been removed. Our client's subscription will not be flushed until after
the delay has expired, and only then if no other subscriber has come along
requesting the object in the meanwhile.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2303 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-03-11 04:43:14 +00:00
Michael Bayne ebfdc80977 Shoot the bootstrap out the debug log.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2224 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-28 04:24:16 +00:00
Walter Korman 90a919720a Removed code to disallow adding an observer more than once since the
observer list now takes care of that.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2064 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-12 23:56:36 +00:00
Michael Bayne 2f7399ed68 Added support for specifying a version string during the client
authentication process.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1870 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-31 18:44:34 +00:00
Michael Bayne 98d19e055a Added facilities for idling out clients that have not communicated with
the server in 90 seconds. The client is set up to ping the server if it
has had nothing to say to it for other reasons in the last 60 seconds.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1860 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-29 23:51:26 +00:00
Michael Bayne 7ce6ca340e Clear out clobj when we're logged off; keep cloid up to date; don't claim
we're logged on until we're fully logged on (meaning we have our clobj
reference).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1818 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-21 18:04:56 +00:00
Michael Bayne dfd499582e Removed vestigal field.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1789 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-08 22:00:27 +00:00
Michael Bayne bdd49a4b3f Moved clientObjectDidChange() into SessionObserver because anyone
observing the session is likely to need to know about that sort of thing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1719 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-20 00:54:39 +00:00
Michael Bayne ba4985053f Revamped "persona selection" support. Things now actually work, and in as
sensible a way as we can hope for.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1717 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-19 23:36:59 +00:00
Michael Bayne e54a4d41f4 The great invocation services rethink of 2002! Rearchitected the remote
method invocation services and converted everything to the new style.
Could this be my biggest checkin ever?


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-08-14 19:08:01 +00:00
Michael Bayne 67492e13f0 Modified client observer notification process to:
a) use an ObserverList in SAFE_IN_ORDER_NOTIFY mode which circumnavigates
any funny business like observers being added or removed while we're
notifying the observers.

b) require that the clients be notified on the main client thread
(generally the AWT thread) by using the invoker; we had a problem
previously where clientDidLogoff() was being called by the communicator's
writer thread which caused all hell to break loose because everything
outside the client networking layer depends on running on the same thread.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1422 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-04 16:34:24 +00:00
Michael Bayne 9b88def20b Took out the server ticks business because we're going to do delta times
in a more general purpose manner.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1403 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-28 22:54:43 +00:00
Michael Bayne fc0300d80d Removed debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1401 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-28 22:07:13 +00:00
Michael Bayne 1492561985 Whoops, had that backwards.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1400 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-28 22:06:05 +00:00
Michael Bayne 2f1a67077a Added code to establish the time delta between the client and server
clocks immediately following authentication.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1398 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-28 21:56:38 +00:00
Michael Bayne 625fc79502 Restructured invocation director so that it can be used in the absence of
a Client instance.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1228 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-10 06:08:59 +00:00
Michael Bayne 1d956214dd Added SessionObserver which is a pared down version of ClientObserver that
only reports logon and logoff.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1117 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-11 19:51:25 +00:00
Michael Bayne 284e8ef6ed Made addObserver into addClientObserver because that's how we do it
everywhere else. Same thing for removeObserver.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@981 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 20:45:23 +00:00
Michael Bayne cd458fa3aa Moved the default server port into the client where it is accessible by
various entities rather than only server code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@571 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 23:36:06 +00:00
Michael Bayne 8dcdfb7e8a Added loggedOn() which indicates whether or not we're logged on and
modified code not to try to logoff in logoff() unless we're actually
logged on.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@491 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-18 18:40:18 +00:00
Michael Bayne 8a4c46badc The first great Three Rings renaming. Cocktail changed to Narya, Cher
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
2001-10-11 04:07:54 +00:00
Michael Bayne e75e442f0c Make the bootstrap data available to external entities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@412 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-09 18:17:33 +00:00
Michael Bayne 95f6bf7300 Modified client so that the invocation director is always around rather
than being created after we log on because other code will want to
register itself with the invocation director before we log on. The
invocation director now just handles being reinitialized which is what
will happen when we log off and back on.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@384 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-03 03:42:31 +00:00
Michael Bayne 6620936a04 We've always been at war with Eurasia. Changed InvocationManager to
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
2001-10-02 02:08:16 +00:00
Michael Bayne 67a3dabac2 Have the invocation manager pass the client object back to the client when
it is ready. Then the client hangs on to it because the invocation manager
doesn't really need to hang on to the client object.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@288 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:33:06 +00:00
Michael Bayne abb831bca8 Provide access to the client object instance.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@282 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 00:58:10 +00:00
Michael Bayne 14d47f8c85 Allow credentials to be set after creating the client.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@122 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-25 00:51:05 +00:00
Michael Bayne f8ccff8f23 More progress on the invocation services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@74 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 18:08:20 +00:00
Michael Bayne d55ce27b2b Created a test service and provider and sorted out further details.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@71 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 07:48:25 +00:00
Michael Bayne 915f3db6f1 More work on invocation manager; modified startup sequence so that server
can get shit together before bootstrapping the client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@68 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 07:09:16 +00:00
Michael Bayne 6663aae772 Beginnings of invocation services implementation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@67 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 05:56:20 +00:00
Michael Bayne 89083f4708 Moved the typed object registry into the same package with the rest of
the typed object stuff; made events typed so they can be transported;
further wiring up of event dispatch over the network.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@34 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-11 17:44:04 +00:00
Michael Bayne 6a1de87f2a Further wired up the client side of the distributed object system. Removed
the facilities for fetching (without subscribing to) an object. This is
done extremely rarely and the user might as well just subscribe and
immediately unsubscribe because the dichotomy between fetching and
subscribing just served to overly complicate the internals for no good
reason.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@30 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-09 23:39:04 +00:00
Michael Bayne 89d073b13c Switched package from com.samskivert to com.threerings.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@12 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-05-30 23:58:31 +00:00
Michael Bayne 33d93d3374 Har! More progress mateys.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@6 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-05-29 03:27:59 +00:00
Michael Bayne 6717f8d6e5 More code, more code, more kibbles and code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-05-23 04:03:41 +00:00
Michael Bayne 40ecd80e09 Initial revision of cocktail multiplayer networked gaming platform. (Far
from complete.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-05-22 06:08:00 +00:00