Commit Graph

216 Commits

Author SHA1 Message Date
Michael Bayne ffc1552225 Clear out idle state when client logs off in case their client object
remains around until their next session.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3129 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-10-01 22:04:18 +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 031331a5c3 Regenerated from service definitions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3037 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-06-22 13: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 9ccff79f52 Regenerated.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2973 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-25 14:51:51 +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
Ray Greenwell bfe9cbba04 Changed the variable named "enum", since that's a keyword in jdk 1.5
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2964 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-22 18:52:33 +00:00
Ray Greenwell ca89a3c122 Demoted logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2935 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-01-11 17:43:12 +00:00
Michael Bayne 8c219530d1 More debug log wrapping.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2804 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-22 23:59:39 +00:00
Michael Bayne 0812c3d8a1 Made the code for updating a player's occupant info more general purpose.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2793 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-11 03:20:06 +00:00
Michael Bayne a34e6a7fd8 Only log when we unload the place, not when it becomes empty.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2782 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-20 01:54:57 +00:00
Michael Bayne 4a302495d5 Unload scene managers (and all their associated business) after they've
been unoccupied for five minutes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2772 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-15 18:40:48 +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
Michael Bayne ff12758dc0 That can be a debug message for surely-sure-opolis.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2760 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-09 04:57:41 +00:00
Michael Bayne 3d5ab0c79a The #1 most popular Narya log message gets the can. No need to hear about
this 50,000 times a day.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2759 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-09 04:56:35 +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 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
Ray Greenwell 40afe3cb94 Chat revamp, phase 1.
- Repackaged crowd/chat
- All messages are delivered to the client via ChatMessage messages,
  including tells.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2631 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-06-03 21:41:33 +00:00
Michael Bayne 6aba06219d Make where() available to the delegates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2608 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-26 21:24:56 +00:00
Michael Bayne 8fef03b84e Make where() not freak out if we do not yet have our place object.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2320 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-03-25 01:12:29 +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 fc1a45dbaa Make where() publicly accessible.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2242 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-02-05 00:23:52 +00:00
Michael Bayne 26ed72d109 Report an error rather than NPEing if we resume a session with a null
_clobj.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2047 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-09 17:19:04 +00:00
Michael Bayne ee8eda46bb Have to check that the user exists in sessionConnectionClosed() before
setting their status to disconnected; don't have to check that the user
exists in sessionDidEnd().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2028 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-05 16:39:21 +00:00
Michael Bayne e91215b689 Explicitly pass along the client object to sessionConnectionClosed()
because it will have been cleared out of _clobj by the time said method is
called if it is called as a part of a terminated session.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2021 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-04 02:47:03 +00:00
Michael Bayne b27571c8c0 Created an extensible mechanism for clearing out a client's location
information when they end their session.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2014 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-03 06:58:57 +00:00
Michael Bayne eff8dc0ca7 We'll have to be a little more forceful about leaving than just clearing
out the body object's location id. Sheesh.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2013 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-02 23:18:06 +00:00
Michael Bayne f8a5a149b7 Clear out our body's location when we log off because with the new client
reference counting thing, we can't rely on a user's object being destroyed
immediately after they log off. Better to ensure that their location will
always be cleared so that location interested entities will be properly
notified.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1991 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 02:46:01 +00:00
Michael Bayne d5c8d93bef Bang howdy partner.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1921 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-06 04:18:02 +00:00
Michael Bayne f79d2de522 Don't bail out so early. We may have already updated the user object but
need to update another place object with a subsequent call to
updateOccupantStatus().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1920 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-06 04:12:39 +00:00
Michael Bayne b9fe4f4b01 Do our disconnect fiddling on the new safe sessionConnectionClosed()
calldown method rather than the old wasUnmapped() which is called on the
conmgr thread.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1899 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-05 05:48:18 +00:00
Walter Korman cf101fad52 Don't need dobjmgr in BodyProvider's constructor.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1882 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 21:33:49 +00:00
Walter Korman 1c5165e44b Update a user's status in their occupant info via the place manager as
required, rather than directly in the place object.  Don't need dobjmgr in
constructor.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1881 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 21:33:21 +00:00
Walter Korman 9347fec9ce Populate newly created occupant info with the body object's status.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1880 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 21:32:23 +00:00
Michael Bayne 383d500f4b Created LACK_ACCESS error code; use it for chat.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1879 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 01:01:27 +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
Michael Bayne 35f3173694 Added pluggable mechanism for feature-level access control.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1874 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-31 21:32:39 +00:00
Michael Bayne bb22856f76 Changed get...() to enumerate...().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1873 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-31 21:32:15 +00:00
Walter Korman f1c8ccd347 Added PlaceManager.applyToOccupants(), and a generic useful OccupantOp.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1869 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-31 01:12:08 +00:00
Michael Bayne 7adcf49ef3 We need to allow the caller to specify the location in which the users
status should be updated.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1864 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-30 00:47:19 +00:00
Michael Bayne 77ae8c7d0f Maintain user's status in their body object; also maintain a timestamp
that indicates the time at which their status became what it is.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1863 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-30 00:42:37 +00:00
Walter Korman a5576eed88 Factored out code to update a player's connection status to make it
available for use by derived classes, and because it's cleaner this way.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1840 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 02:04:50 +00:00
Walter Korman fec48b8586 Track a user's connection status in their occupant info so that we can
react to player disconnection, idle (implementation still pending), and
reconnection appropriately.  Added PlaceManager.bodyUpdated().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1831 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-26 02:40:30 +00:00
Michael Bayne a0e9044e93 Config clean up and unification. The base servers were doing more than
they needed to and when all that was stripped away, they didn't really
need their own config files.

Now what little config they need is provided by the users of these basic
services so that said users can make their own decisions about where to
obtain configuration information.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1820 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-21 20:56:21 +00:00
Michael Bayne 061c73c64e Place managers may need a chance to clean up after a failed permissions
check; so we give them a callback for such contingencies.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1780 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-06 03:31:16 +00:00
Michael Bayne f3385ad3a8 Perform the permissions check.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1779 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-06 02:37:58 +00:00
Michael Bayne 4da35c0f0b Provide a means by which a place manager can check, early in the
initialization process, whether or not it actually wants to be created,
and allow it to abort the whole deal if it doesn't.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1777 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-06 00:44:58 +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 ed0693a8e7 Clear out our speak service registration when the place object goes away.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1725 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-20 04:53:14 +00:00
Michael Bayne ba4985053f Revamped "persona selection" support. Things now actually work, and in as
sensible a way as we can hope for.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1717 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-19 23:36:59 +00:00