Commit Graph

52 Commits

Author SHA1 Message Date
Michael Bayne ce5bcd95d5 Can't report unhandled events or event just message events because there
are a number of them that just aren't meant to be handled by the place
manager. Alas.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@417 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-09 18:41:01 +00:00
Michael Bayne c9dfd6ef45 Added code to handle displaying the user interface for a place once we
have actually entered the place. It's not tied to a particular UI toolkit
and this requires coordination between the client implementation and the
place implementation, but that seems better than the alternative of tying
the Parlor code to Swing or similar.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@408 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-09 17:20:03 +00:00
Michael Bayne 61a2c30859 Structured handleEvent() so that we can report unhandled events.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@407 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-09 17:18:44 +00:00
Michael Bayne def7b5802d Documentation edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@402 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-06 00:24:46 +00:00
Michael Bayne 63191ec610 I love to make vast, sweeping changes. Now the place services incorporate
a place config object which is used to determine the classes of the place
manager and the (newly added) place controller.

Moved PlaceView and PlaceViewUtil into cocktail.party.client from
cocktail.party.util because the controller and the UI (in very abstract
form) are now part of the place services.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@399 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-05 23:57:26 +00:00
Michael Bayne 681d851b08 Documentation fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@395 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-04 22:47:49 +00:00
Michael Bayne 64e66dc98a Created a mechanism for dispatching notifications to user interface
elements when the client enters and leaves a place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@394 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-04 20:02:49 +00:00
Michael Bayne 1f663669c9 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.

Also modified PlaceManager and PlaceRegistry such that there is no
Properties object supplied for configuration (let the derived classes sort
out how they want to configure their managers) and so that the
PlaceManager tells the PlaceRegistry what sort of PlaceObject derived
class it wants to manage rather than having that come from the
configuration.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@374 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-02 02:07:50 +00:00
Michael Bayne 027bb29769 Created fooCodes interfaces to go along with invocation service
packages. These contain all the message codes as well as error response
codes that are used by a particular invocation service.

Also changed client.LocationManager to client.LocationDirector and
chat.ChatManager to chat.ChatDirector to go along with the new philosophy
of naming the client-side managing entity for an invocation service a
director.

Also elimitated cocktail.util.Codes since it's no longer used as a central
repository for codes (instead they are in InvocationCodes and its
derivatives).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@368 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-01 22:14:55 +00:00
Michael Bayne f4cc436137 Allow the throwing of Exception rather than IOException during the server
init process.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@360 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 22:32:28 +00:00
Michael Bayne 0d1a4ba1db Not to register ourselves with the invocation manager until we're logged
on. Prior to that, it don't exist.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@306 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-22 00:08:39 +00:00
Michael Bayne 0a1e364e03 Created adapters for the ClientObserver and LocationObserver interfaces to
make handling just one or two of the callbacks for those interfaces
simpler.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@305 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-22 00:08:12 +00:00
Michael Bayne 4c77daa2b2 Make sure we have message handlers before we go looking at them.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@302 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 22:34:20 +00:00
Michael Bayne 043cb46a4d Start up the place manager *after* we've put it into our place table.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@294 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:38:06 +00:00
Michael Bayne fe7bfdc67f Added a toString() implementation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@293 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:37:21 +00:00
Michael Bayne 7cac50ee00 Clear out the occupant cache when changing rooms and cache all the
occupants in a room when we first arrive.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@292 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 19:37:08 +00:00
Walter Korman 59a6b2b723 Fixed javadoc syntax.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@287 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 01:17:25 +00:00
Michael Bayne 4b0f742356 Added a toString() set up to make it easy to stringify place manager
derived classes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@285 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-21 01:07:19 +00:00
Michael Bayne 695a90146c Whoops, called wrong callback on occupant removed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@279 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-20 21:52:43 +00:00
Michael Bayne 79c320c944 We'll want a reference to the occupant manager in the context.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@278 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-20 21:45:37 +00:00
Michael Bayne 04b5bfba8c Initial revision of occupant management services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@276 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-20 20:54:57 +00:00
Michael Bayne 2f7f106271 Server side of occupant management stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@269 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 04:28:36 +00:00
Michael Bayne 24a3d7cf0a Added getPlaceObject(); changed _place to _plobj; added a method that
makes it possible for derived classes to do the right thing if changing
location fails halfway through (meaning we can't subscribe to our place
object).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-14 06:49:28 +00:00
Michael Bayne fc1432ddfe Modified location manager to make it more amenable to being extended and
frobbed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@235 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-14 03:23:06 +00:00
Michael Bayne 0da19f558e Documented class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@234 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-14 03:22:19 +00:00
Michael Bayne 5daf0d734f Throw an instantiation exception rather than returning null if there's an
error while creating a place manager.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@227 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-11 04:03:25 +00:00
Michael Bayne f28c645067 Fail requests to move to the location a client already occupies.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@225 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-11 02:07:20 +00:00
Michael Bayne a5ef549091 Separated the code that does the moveTo from the code that processes the
invocation request. This will allow more complicated services to be built
atop the same location management system provided by the Party services.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@220 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-11 00:22:55 +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 aa9799e8c6 Use inherited properties when we bind 'em.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@200 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-08 23:48:51 +00:00
Michael Bayne 6b468393aa Finished wiring up tell capabilities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@183 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 03:13:26 +00:00
Michael Bayne 65cee92ba6 Account for invocation id in invocation response methods.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@182 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 03:06:39 +00:00
Michael Bayne bdb8625ffd Beginnings of the tell (client to client messaging) implementation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@181 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 02:54:28 +00:00
Michael Bayne d2d9de37c1 Added code to track a username to body object mapping for all users with
active sessions (even if they are currently disconnected).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@178 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 01:55:41 +00:00
Michael Bayne e52ab9a739 Finished up handling of bodies moving from place to place. Added callback
methods into PlaceManager that can be overridden to do things when bodies
enter or leave a place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@175 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 01:13:36 +00:00
Michael Bayne 3751f0ad9b Created a party client which sets up the username in the body object.
Modified the party server to configure the cher services to use our party
client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@163 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-03 02:28:20 +00:00
Michael Bayne 9788e18e1a More support for chatting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@160 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-03 02:14:41 +00:00
Michael Bayne bd4ed274bc Bad monkey. Checked in something that didn't compile.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@156 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 23:47:21 +00:00
Michael Bayne 234432858c Progress on chat support.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@155 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 23:46:47 +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 db022bb268 OidList fields should be initialized to an empty oid list at construct
time.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@148 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 05:10:30 +00:00
Michael Bayne e08138875f More location observer stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@144 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 04:59:54 +00:00
Michael Bayne d6e9207a26 Need ability to enumerate over place managers.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@142 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 01:48:08 +00:00
Michael Bayne 7aabc94008 Whoops. plreg should be static.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@141 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 01:47:56 +00:00
Michael Bayne 51665c58d8 Return a reference to the place manager after creating a new place.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@140 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 01:21:03 +00:00
Michael Bayne ad506a13d5 Added mechanism for passing configuration information in to place
managers. This will be used for dynamic server side configuration and an
additional mechanism will provide for dynamic client side configuration.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@137 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-01 20:37:35 +00:00
Michael Bayne 9653971ddd Documentation updates; name changes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@136 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-01 17:00:59 +00:00
Michael Bayne 51f410cbd9 Initial pass at place registry and place manager stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@135 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-01 03:22:54 +00:00
Michael Bayne 3e5060c7c5 More location management progress.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@116 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-23 22:59:43 +00:00
Michael Bayne a643dfd7e3 Further implementation of body/place/chat stuff. Mostly location related.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@109 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-23 21:14:27 +00:00