Commit Graph

1101 Commits

Author SHA1 Message Date
Michael Bayne 970410d4e6 Minor fixups to prevent complaints during logoff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1090 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 06:15:43 +00:00
Michael Bayne 268b0797f6 Removed verbose logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1089 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 06:15:23 +00:00
Michael Bayne 637413a3aa No longer need authinfo.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1087 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 05:39:52 +00:00
Michael Bayne 9e16e87a69 Doris the refactorasaurus. Restructured the whole client object resolution
process so that it can be done by other entities than just the client
management services. Coordination between these parties is managed so that
no toes are stepped on in the course of loading and unloading clients and
everything is generally much nicer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1086 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 05:33:25 +00:00
Michael Bayne 38ca708a4f Modified authentication process such that an authenticator thread is no
longer maintained. Implementations can choose to create their own
authentication thread if they wish or use some existing combination of the
invoker and dobjmgr threads. Also added an invoker to the base server
class.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1085 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 03:19:18 +00:00
Michael Bayne 7dc7545541 Pass the dobject manager to the invoker at construct time.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1084 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-05 03:17:46 +00:00
Michael Bayne 424f2da631 Only post a compound event if it contains other events when a transaction
is committed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1064 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-21 00:59:29 +00:00
Michael Bayne 6a0ee2f291 Added support for null Streamable fields.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1029 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 03:30:55 +00:00
Michael Bayne b550063f04 Chain exceptions when we can.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1028 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 03:30:40 +00:00
Michael Bayne d8921f3c4b Modified the value marshaller to support reading and writing null.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1027 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 03:05:56 +00:00
Walter Korman 85797eed0d Renamed HeterogenousStreamableList to the only slightly less verbose but
easier to spell PolyStreamableList.  Use ListUtil and String arrays rather
than hashtables to track classname to class id mappings.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@988 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 01:54:51 +00:00
Walter Korman 7bb1b0f285 A Streamable list of Streamable objects, for those occasions where the
user has the need to store objects of varying types in a single list
(e.g., different sub-classes of a base class that is itself streamable)
that will itself be sent over the wire.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@987 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-11 22:43:18 +00:00
Michael Bayne bcca494fdd Commented out some debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@986 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-10 04:19:34 +00:00
Michael Bayne a4283fd756 Report the actual error when we can't look up a method.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@985 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-10 02:13:31 +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 1bca84927f Added support for DObject transactions which are collections of events
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
2002-02-09 07:50:37 +00:00
Michael Bayne c57ff60e69 Removed ability to run server in test mode. We don't need a whole server
when were unit testing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@977 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 07:49:41 +00:00
Michael Bayne 1e36cb65d8 Need to prefix heterogenous set elements with their classname.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@964 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-08 05:14:22 +00:00
Michael Bayne b4d5f7da24 Have to cope with heterogenous sets in toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@963 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-08 04:44:32 +00:00
Michael Bayne 5e303799a2 Added a field marshaller for byte arrays.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@958 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-07 05:27:07 +00:00
Walter Korman bc6f66f6cd Added ObjectAction.toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@953 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-07 00:24:36 +00:00
Michael Bayne 670f3a71c3 Fixed javadoc.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@947 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-06 22:47:28 +00:00
Michael Bayne 84891c9b91 Whoops, wasn't appending field data to our buffer.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@939 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-05 22:27:26 +00:00
Walter Korman 1cdefe7ae1 Added marshaller for booleans.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@929 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-05 09:35:59 +00:00
Michael Bayne a83e512270 Modified DObject.toString() to use fieldsToString() so that all of its
derived classes need not do their own toString()ing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@928 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-04 01:47:20 +00:00
Michael Bayne 5bb4e3435b Provided a mechanism by which a DSet can be populated at construct time.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@927 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-04 01:34:59 +00:00
Michael Bayne c6f72ce556 Log message edit.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@926 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-04 00:51:15 +00:00
Michael Bayne 25717d3cce Modified distributed sets such that they can be heterogenous or
homogenous, and in the latter case, they simply conserve network bandwidth
by not transmitting the classname of serialized elements when transmitting
themselves or element added/updated events.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@925 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-04 00:50:12 +00:00
Walter Korman 5dc68306ac Added a byte field marshaller.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@922 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-03 06:06:10 +00:00
Michael Bayne 404a56dead Per Walter's suggestion: made all of the listener interfaces extend a base
listener interface so that an object that attempts to add itself as a
listener to a distributed object is required to implement at least one of
the listener interfaces.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@921 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-03 04:38:05 +00:00
Michael Bayne d2ee77e08e Use safeToString() when logging the object that caused a subscriber to
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
2002-02-02 09:53:00 +00:00
Michael Bayne 9d9872f606 Made ObjectAccessException a nestable exception; modified
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
2002-02-02 09:42:36 +00:00
Michael Bayne c6d2529e78 It doesn't get much simpler than this: objects that desire to be
streamable and that don't have funky requirements can simply extend
SimpleStreamableObject and magically have their public fields streamed for
them as well as have a useful default implementation of toString(). My
tired fingers are thanking me already.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@917 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-02 08:48:03 +00:00
Michael Bayne 373436429d Need to create a hash map for our marshaller cache.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@914 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-02 01:07:20 +00:00
Michael Bayne b7913ceb0b Moved generic marshalling code into presents.io from presents.dobj.io as
it is now general purpose.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@912 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-01 23:32:37 +00:00
Michael Bayne ef9e0bc53f Modified field marshalling code to work on any object rather than being
DObject specific (because it didn't need to be).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@911 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-01 23:26:49 +00:00
Michael Bayne d925c5d1b4 Cause transient fields to be ignored in the DObject marshalling process.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@910 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-01 22:35:06 +00:00
Michael Bayne 80c9550a57 Added some debugging, but commented it out.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@895 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-30 18:30:43 +00:00
Michael Bayne 61730287ca Added code for marshalling arrays of streamables.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@891 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-23 18:01:19 +00:00
Michael Bayne 6a5e8cd82b Added standard ACCESS_DENIED code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@886 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-22 02:50:36 +00:00
Michael Bayne e670b076e6 Made toString() extendable. Oh God, how I wish I had multiple inheritance
and could just fold in a Stringable class instead of rewriting the same
code thousands of times. Three cheers for code reuse!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@766 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-13 05:32:28 +00:00
Michael Bayne a0bdcb9627 Don't claim to have authed a connection unless we accepted the auth
request.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@736 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-04 07:32:10 +00:00
Michael Bayne 60f8cca7a5 Added a means by which to set the authenticator in the auth manager.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@735 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-04 01:48:51 +00:00
Michael Bayne 5d2f302218 Created RootDObjectManager interface for those entities that want to look
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
2001-12-04 01:01:54 +00:00
Michael Bayne a308079d70 Utilities for streaming streamables.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@725 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-03 23:48:38 +00:00
Michael Bayne 16efe382bd Augmenting the AuthResponseData with server stuff turned out to be a bad
idea because that class is shared between the client and the server, so
instead we provide a blank object reference in which the authenticator can
provide whatever information it wants to the client services.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@723 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-03 22:01:57 +00:00
Michael Bayne a0ba41c31d Provide a mechanism for the authenticator to pass information to the
client object by way of passing the auth response data up to the client
after the completion of the authentication phase. This allows information
loaded by an authenticator (like a user record) to make its way into the
real world.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@722 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-03 20:14:51 +00:00
Michael Bayne f506a686f9 Added unregisterReceiver().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@650 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 21:37:58 +00:00
Michael Bayne cc21ad8679 Javadoc fixes and cleanups.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@623 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-18 04:27:56 +00:00
Michael Bayne ff94bd7799 Made it possible to disable client and connection managers for testing.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@609 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-08 05:39:51 +00:00