Commit Graph

74 Commits

Author SHA1 Message Date
Michael Bayne afa995ebb9 Finally broke down and changed createPlaceView() to eliminate the annoying
potential fuckola of being called before the controller gets around to
initializing the casted context it almost certainly needs to create its
place view.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3440 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-03-30 01:09:30 +00:00
Michael Bayne 2d19a0ba82 Renamed DSet.entries() -> DSet.iterator().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3406 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-03-15 02:12:03 +00:00
Ray Greenwell fbbaf7c64a Got rid of the "occupant cache" which was used to provide the previous
value to observers when an OccupantInfo was updated or removed. This
functionality is now built-in to the dobj system, so just use
getOldEntry() on those two events.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3387 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-03-09 23:15:02 +00:00
Michael Bayne d2ea985abb Regenerated invocation receivers; fixing a javadoc booch in the process.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3311 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-01-24 23:13:00 +00:00
Michael Bayne d27b150365 Comment fixy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3287 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-12-28 03:50:07 +00:00
Michael Bayne 3ed8e3cd0e Added support for loading place-related classes with a custom class
loader.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3255 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-11-30 20:04:11 +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 62fed218c3 Make the PlaceConfig available.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3079 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-08-16 22:57:44 +00:00
Michael Bayne 32dee3cbaf 405 modified source files and 17,367 lines of diffs later we now enforce
more discipline when handling names in our code base. Any user entered
name should find its way into a Name object as soon as it comes out of a
text field or whatnot, and stay that way until it makes its way into a
text field or into a database record (for which String objects are vastly
simpler because of JORA magic).

Dear God, let me never again make a change this large for the rest of my
mortal life.

Unfortunately, this means we have to keep an eye out for funny business
pretty much everywhere. However, since we will absolutely want to test
market stalls and so forth on Azure, we'll have an opportunity to iron out
any funny business that might fall under the radar during our internal
testing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2980 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-03-06 11:29:19 +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 b032f51b84 Refuse moves to invalid zones, scenes or places.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2819 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-03 20:41:32 +00:00
Michael Bayne e6dc5c38d7 The basis for logging all recent chat on the server. Now I have to make
every type of chat object known to man capable of reporting who's
listening.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2653 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-06-14 00:47:16 +00:00
Michael Bayne 0c246fcef7 Have to call mayLeavePlace() in a couple of other places. Fixed
documentation for it in PlaceController.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2105 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 02:46:58 +00:00
Michael Bayne 4abcc6a87c Need that in the delegate as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2104 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 00:27:26 +00:00
Michael Bayne 318d16647f Added mayLeavePlace().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2103 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 00:26:56 +00:00
Michael Bayne c53a6f59b1 Add support for clearing a place view when it goes away so that we can
better manage multiple outstanding place views.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1929 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-08 09:31:59 +00:00
Michael Bayne e8ee391d24 Report moveTo() for now as it may inform the hunt for the puzzle in world
view bug.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1888 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-03 01:15:36 +00:00
Walter Korman f25c028cca Initial work on a body service to allow setting a user's idled state.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1877 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 00:39:18 +00:00
Walter Korman 556347c778 Clear things out when the client logs off.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1852 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 23:30:56 +00:00
Walter Korman 2625d76084 Oh god, how did I accidentally leave this in here? Removed verbose
logging.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1844 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 21:58:18 +00:00
Michael Bayne 6781e1da56 Oh the price we pay for wanting to be able to logoff and log back on
without exiting the client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1843 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 21:24:58 +00:00
Michael Bayne 14a313486b Documentation repairs.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1842 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 18:49:51 +00:00
Walter Korman 657a8a6f03 Initial version.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1839 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 02:03:40 +00:00
Walter Korman 28a3cde90b Use an ObserverList.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1838 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 02:03:13 +00:00
Michael Bayne 561f25bb18 Provide the previous occupant info record when reporting an update so that
observers can determine which fields have changed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1835 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 01:25:08 +00:00
Michael Bayne 99edb5cd5e Regenerated services and receivers to fix bugs and use updated templates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-08-20 19:38:16 +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 43d6c3de3d Created convenience class for clients that wish to create a JPanel to act
as their PlaceView.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1562 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-07-09 21:05:33 +00:00
Ray Greenwell 36a8a9672f zone moves and portal traversals can now have an optional result listener
passed in.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1460 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:40:16 +00:00
Michael Bayne a7a427f972 Return true from moveTo() if we actually sent the request, false if the
request was rejected out of hand.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1458 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:24:49 +00:00
Michael Bayne 25b22b4f11 Need to mark our last move request time regardless of whether we have a
pending request outstanding.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1457 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:19:16 +00:00
Michael Bayne b9000bf08c Don't declare a pending moveTo request to be stale until at least a minute
has gone by. This prevents us from getting shafted by double clicks.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1456 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 00:57:49 +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
Walter Korman ed25692d93 Deal gracefully with moving to a non-existent location.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1385 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-22 21:47:14 +00:00
Walter Korman b4982af8bc Clear out our location and inform observers that Elvis has left the
building when the client logs off.  Use an ObserverList.  Expanded
imports.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1384 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-22 21:46:53 +00:00
Michael Bayne b15d38b54d Relegated a shitload of logging to DEBUG status.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1361 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-15 23:54:35 +00:00
Michael Bayne 14e2166194 Added an applyToDelegates() that restricts its application to delegates
that derive from a particular class.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1359 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-13 23:03:24 +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
Walter Korman f6fedf5bdf Renamed OccupantManager to OccupantDirector.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1239 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-15 14:38:46 +00:00
Michael Bayne ad611952fa Wasn't keeping reference to PlaceObject even though we had a member for
it; modified handleAction() to call super if we or our delegates didn't
handle the action (which invokes the reflecty business).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1143 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-21 00:55:10 +00:00
Michael Bayne 7ccb9594b9 Changed DSet.Element to DSet.Entry in preparation for the addition of
array element update support. (Arrays have elements, sets have entries.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1133 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-18 23:21:26 +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 131ab59ad9 Whoops, need a length one not zero array.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@997 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 00:00:45 +00:00
Michael Bayne a85a6f1394 Delegation! Since it's clear that extracting services into delegation
classes is only going to become more common, I've gone and created a
comprehensive facility for creating and using delegates in the place
controller and manager as well as the game controller and manager. With
the pattern nicely set, it is also easy to extend to controller/managers
further up the hierarchy that might need to delegate special methods of
their own. Whee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@994 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-13 03:21:28 +00:00
Michael Bayne 635e9cf930 addObserver -> addClientObserver.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@982 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 20:47:11 +00:00
Michael Bayne be4b5c3801 Added ability to look up occupants by username.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@844 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-20 02:48:21 +00:00
Michael Bayne e90189fd2c Added convenience function for looking up an occupant's info by body oid.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@839 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-19 23:11:59 +00:00
Michael Bayne 4769609931 Revamped code to watch OCCUPANT_INFO rather than OCCUPANTS which was
necessary to make occupantUpdated() work.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@801 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 08:09:10 +00:00
Michael Bayne 769b2e8895 Blag! Both the ZoneDirector and the SpotSceneDirector needed to extend the
SceneDirector which, without multiple inheritance, would make it
impossible to use both in a single client. Of course, we need to use both
in Yohoho!

So I refactored the whole enchilada to delegate rather than extend, which
blows because various methods must now be made public and a particular
failure case for the moveTo request now requires that a special failure
handler interface be made available so that LocationDirector "extensions"
can inject themselves into the failure handling process.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@789 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 05:18:20 +00:00
Michael Bayne 1731756712 Improved error checking and reporting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@769 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-13 06:34:40 +00:00