Commit Graph

54 Commits

Author SHA1 Message Date
Michael Bayne 5ae6875bbb Added a note about listener registration management.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@440 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:05:31 +00:00
Michael Bayne 804505890f We love to revamp! Created a set of listener interfaces which are used
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
2001-10-12 00:03:03 +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 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 c8e6606056 Need to reset our byte array output stream when we're done with it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@298 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 21:16:53 +00:00
Michael Bayne 70eb9480d8 Made element iteration work properly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@291 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:35:56 +00:00
Michael Bayne a065652ac6 Unbooched subscriber array handling.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@290 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:35:02 +00:00
Michael Bayne 9ce3d894bd readExternal() should have been called readFrom().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@289 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:33:38 +00:00
Michael Bayne dac504c7bb Provide support for iterating over a DSet.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@283 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 00:58:26 +00:00
Michael Bayne b7b78e9f79 Wired up marshalling for DSet objects.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@277 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-20 21:44:10 +00:00
Michael Bayne eac3e9aa94 Edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@268 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 04:22:50 +00:00
Michael Bayne 890bad996e Added ability to update elements in a set.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@266 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 03:45:43 +00:00
Michael Bayne 2179599bd6 Edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@265 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 03:33:11 +00:00
Michael Bayne 55c4847a17 Added support for distributed sets: unordered collections of elements
where the elements are user defined objects that know how to read and
write themselves on a stream. Sets are required to contain elements all of
the same type to make network traffic more efficient (avoid sending the
classname every time an element is added or removed).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@264 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 03:31:09 +00:00
Michael Bayne 3c413b9f3d Added documentation; modified internal array management to use ListUtil.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@258 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-15 18:38:54 +00:00
Michael Bayne 8a67066c57 Do the right thing if subscribers remove themselves after we've been
destroyed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@217 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-11 00:11:53 +00:00
Michael Bayne a44e552eb8 Modified invocation services such that providers are responsible for
delivering their own responses. They now have all the information
necessary to do so which means that they can delay the delivery of a
response until some other asynchronous event has taken place (like a
database load completing). Prior to this, they were required to complete
their service immediately and return the response back to the invocation
manager.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@216 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-11 00:05:58 +00:00
Michael Bayne 6fe9ad8a6e Finished wiring up oid list tracking; made shutdown() work on the cher
server; added an easy mechanism to write test modules and invoke them on
the server.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@192 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-08 00:28:49 +00:00
Michael Bayne 782e9501d6 Implemented object destruction; wired up some missing stuff; created a
test server to make some testing easier; various other cleanups.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@188 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-07 20:38:58 +00:00
Michael Bayne b164f2abc6 No need to tell subscribers about lock release.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@173 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 01:05:12 +00:00
Michael Bayne 8d5beffad7 Fixed a bug with removing oids.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@172 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 01:04:49 +00:00
Michael Bayne 7873ee98f7 Added facilities for creating named locks on distributed objects that will
allow services to prevent repeated invocations of themselves from stepping
on one another because of the serial nature of event processing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@171 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 00:39:44 +00:00
Michael Bayne a831089362 Revamped toString() to be more derived class friendly. Added a
ReleaseLockEvent which will be used by the distributed object locking
facilities.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@169 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 00:32:11 +00:00
Michael Bayne ae73c73ac4 Commented out debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@158 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-03 02:12:27 +00:00
Michael Bayne ba74e4600b Modified toString() to be extensible.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@150 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 06:01:13 +00:00
Michael Bayne 59ad4a7955 Added support for marshalling oid lists.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@147 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 05:09:21 +00:00
Michael Bayne 9d93650b65 Fixed javadoc @see syntax.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@143 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 04:49:08 +00:00
Michael Bayne 3798a6a763 requestOid{Add|Remove}(): called by (eventually automatically generated)
derived classes to add/remove oids to/from an oid list field.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@105 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-23 21:11:48 +00:00
Michael Bayne 6c8c08a033 Removed unneeded imports.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@100 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-21 01:09:55 +00:00
Michael Bayne b6a8e3d598 Added oid lists and the ability to add and remove oids from them
(incomplete).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@99 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-21 01:06:49 +00:00
Michael Bayne e912b18e27 toString()stravaganza!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@77 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 19:30:14 +00:00
Michael Bayne 359af834ae Use StringUtil.toString() to toString() our args array so that it is
readable.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@75 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-19 19:17:06 +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 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 7cb9d84d54 Wired up the remainder of event dispatch and added facilities for cleaning
up after objects when they have no more subscribers.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@38 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-13 05:17:55 +00:00
Michael Bayne 55a648dcf9 These need zero argument constructors to allow for unserialization.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@36 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-13 05:15:49 +00:00
Michael Bayne c8b13e3bca Documented valid dobj types in DObject; implemented value marshaller which
can read and write all of the valid dobj types over the network; wired up
the attribute changed events to serialize and unserialize their values.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@35 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-12 02:57:30 +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 a8bddf0238 Moved dobj.net into dobj.io because it's really I/O stuff we're doing
here, not explicitly network stuff.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@33 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-11 17:42:20 +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 029712985e DObjectManager: added unsubscribeFromObject() for subscribers that wish to
unsubscribe in the absence of a reference to the object in question and
potentially from an unsavory thread.

Client, ClientManager, etc.: Further work on the server-side of the
distributed part of the distributed object functionality.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@27 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-05 22:44:31 +00:00
Michael Bayne 43c516ab24 Removed last traces of Event which is now DEvent.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@23 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-02 01:31:43 +00:00
Michael Bayne 1c6b292edc Starting to wire up client/server dobj stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@22 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-02 01:30:37 +00:00
Michael Bayne 1929898dd8 More juicy goodness. Event dispatch seems to work now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@20 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-01 20:35:39 +00:00
Michael Bayne 45c2dc143f More progress on the distributed object stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@19 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-01 19:56:13 +00:00
Michael Bayne 825b36c0ff Beginnings of event stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@18 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-01 07:12:13 +00:00
Michael Bayne b6d12bc06d Mmm... comments and updates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@17 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-01 05:17:16 +00:00
Michael Bayne 567a2ada10 More progress on the basic distributed object facilities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@16 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-06-01 05:01:52 +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 9cd146a43c Created the facilities for transmitting distributed objects and derived
classes over the wire (by inspecting their fields and sending those
directly).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@8 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-05-30 00:16:00 +00:00