Commit Graph

38 Commits

Author SHA1 Message Date
Michael Bayne f1b1a06834 Updated services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5436 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-10 22:46:24 +00:00
Dave Hoover 8856120403 Import cleanups
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5399 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-26 17:29:59 +00:00
Michael Bayne e41dda3018 Style fixes and import pruning. Beware, CheckStyle is (finally) coming to town.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-18 18:32:59 +00:00
Michael Bayne bf77cb1520 Moved location services implementation into LocationManager so that
LocationProvider can be an interface like its brothers and sisters.

Modified the place registry to create PlaceManager instances using the injector
so that we can inject dependencies into managers. Also modified the custom
classloader functionality so that it can/will circumvent this process
entirely. It's not possible to inject using a custom classloader and one
certainly would not want to do so.

Unfortunately this means we can't inject some basic managers into PlaceManager
because it needs to work for games loaded into a sandboxed classloader, but the
big win is that in everything other than GameManager and PlaceManager, we can
inject to our heart's content.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5168 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 17:18:26 +00:00
Michael Bayne 919112cf88 Switch to new samskivert logging API.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5134 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-27 19:25:38 +00:00
Michael Bayne ec3fb4023a Allow the BodyObject to play along when we enter and leave a place.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5108 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-18 11:30:45 +00:00
Michael Bayne 962326fcaf Revamped the way BodyObject.location is tracked. Now we use an object which can
be extended to contain the sceneId by Whirled (Vilya's Whirled, though also
Whirled Whirled by extension) so that we don't end up with problems where
BodyObject.location changes but BodyObject.sceneId remains stale. This won't
impact Yohoho because the Yohoho client is always in a scene, it uses a
separate mechanism to track games, whereas Whirled's natural usage is to move
between scenes and non-scenes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4779 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-21 00:46:25 +00:00
Michael Bayne b0ec20eff9 Widening.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4776 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-07-18 21:58:16 +00:00
Michael Bayne 09f0bee0f3 Yet more header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-24 00:39:27 +00:00
Michael Bayne 4694c1ce17 Just who() is fine, we don't need the whole user object dumped.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4445 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-11-07 01:40:23 +00:00
Ray Greenwell 26c928fc45 Use the valueOf factory methods pretty much everywhere.
These are the preferred way to get instances of Boolean, Byte,
Short, Character, Integer, Long, Float, and Double object.
It's always made sense for Boolean objects, and with 1.5 these factory
methods were blessed as the proper way to get instances unless one
absolutely needed a distinct object.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4145 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-24 01:24:24 +00:00
Michael Bayne a213847eea Added leavePlace() for games where you are sometimes not in any "place" at
all.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3638 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-06-30 00:02:13 +00:00
Andrzej Kapolka 9213b23ce1 Added ratifyBodyEntry to PlaceManager.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3561 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-05-17 21:53:53 +00:00
Michael Bayne aeff9e61cf Not having a client is not a warnable offense. All server only
"characters" (NPPs in Yohoho) have no client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3270 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-12-10 19:16:57 +00:00
Michael Bayne a6d7764e29 More custom classloader support. We now have a proof-of-concept working so
it's unlikely that the rabbit hole will surprise us with further depth.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3269 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-12-10 02:54:26 +00:00
Michael Bayne 1f8c4578b7 LGPLed the library. Hello world.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3098 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-08-27 02:12:55 +00:00
Michael Bayne ef748636e2 Various Eclipse suggested bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2969 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-25 14:41:47 +00:00
Michael Bayne 206dd46e68 This too can now be related to the land of debug messages.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2761 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-09 04:58:25 +00:00
Ray Greenwell 829f3ad0eb Start transactions outside of the try-finally clause so that if there
is a problem with starting a transaction, we don't get an exception
for failing to commit the transaction.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2712 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-07-16 18:03:30 +00:00
Michael Bayne 56b0012782 Use Comparable for the to be removed distributed set key.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2290 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-02-26 17:54:56 +00:00
Michael Bayne 0309b23a69 Restructure try/finally blocks to ensure that we don't attempt to release
a transaction we were never able to start.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1771 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-04 01:31:43 +00:00
Michael Bayne 335ef8eb05 New occupant info handling facilities that prevent rapid fire modifiers
from stepping on one anothers' toes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1676 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-13 00:20:43 +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 b32ca52809 Fixed up logging; added code to mark a location as reserved when we return
it from a call to getUnoccupiedLocation(). Anyone can move into the
location (regardless of who reserved it), but it won't be reported as
unoccupied until someone enters it and leaves from it once again.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1520 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-20 22:38:58 +00:00
Michael Bayne 97197d49cc Added support for initiating a place/scene/zone transition from the
server; chat director no longer needs to wait until we're logged on to
register itself with the invocation director.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1393 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-26 02:24:46 +00:00
Michael Bayne 9abf440dde If the client asks to move to the location they're already in, just go
along with them rather than sticking a fork in the program.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1325 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-02 21:19:28 +00:00
Walter Korman a97e9db978 Moved remaining client.*Codes classes into their respective data packages
as they are intended to represent codes shared between the client and the
server.  Made correspondingly necessary changes throughout.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-15 16:28:05 +00:00
Michael Bayne 69b4f7fa86 Modified location services such that the registry and the provider are
supplied with the managers they need at initialization time and such that
the location provider is automatically registered by the place registry
rather than requiring you to put a line in a config file which was a silly
idea in the first place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@729 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-04 01:02:59 +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 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 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 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 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 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 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