looking it up by name which creates PITA when we want to obfuscate and strip
out unused code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4026 542714f4-19e9-0310-aa3c-eee0fc999fb1
- OccupantInfo is created by the BodyObject
- the BodyObject is passed to the OI constructor and it uses information
therefrom to configure itself
- the PlaceManager are no longer responsible for indicating the type of
OccupantInfo to use or how to populate it.
This makes much more sense as the same type of OccupantInfo is generally used
across the entire system and it's annoying to have to have every PlaceMaanger
derived class know the type of OccupantInfo to create and know how to
initialize it. The one drawback is that only information from the BodyObject
can be used to populate the OccupantInfo, unpublished server-side only
information cannot be used (unless its stuffed into a transient field in the
BodyObject).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3774 542714f4-19e9-0310-aa3c-eee0fc999fb1
triggered by the activity of another user. The other username is provided
so that the message can be muted if desired.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3770 542714f4-19e9-0310-aa3c-eee0fc999fb1
applicable, as it will only otherwise get checked when users leave the place.
It's possible that we'll load and nobody will ever enter.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3763 542714f4-19e9-0310-aa3c-eee0fc999fb1
as their authentication name (which we leave in BodyObject.username). This
turns out to be simpler than the system we adopted for Yohoho wherein we
replace the player's user object after they select a character, but converting
to this sort of system is way more work than would be worth it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3758 542714f4-19e9-0310-aa3c-eee0fc999fb1
Changed things around a bit to have the cheesy JabberChat run out of the box:
* ChatDirector no longer freaks out when given null message bundles/managers.
* MiCasa's ChatPanel is marked with a TODO item to stop passing in null
messagebundles and messagemanagers to ChatDirector.
* JabberApp and JabberClient have been adjusted to allow the user to specify
which chatroom to join from the command line; I plan to implement this using
BootstrapData when time permits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3741 542714f4-19e9-0310-aa3c-eee0fc999fb1
handling, chat history support and chat mogrification into the base
framework.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3690 542714f4-19e9-0310-aa3c-eee0fc999fb1
to log information.
There was an exception in here somewhere that froze a big tourney last week
but the stack trace was optimized out by hotspot (damn thee!). Hopefully
this will at least narrow it down, and possibly prevent total brokenness.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3681 542714f4-19e9-0310-aa3c-eee0fc999fb1
report success always when muting, even if nothing changed, but report
that the person wasn't there if an umute fails.
We get bug reports from people who unmute the person but they still can't
hear them and the only thing I can think of is that they are mistyping
the name.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3579 542714f4-19e9-0310-aa3c-eee0fc999fb1
one can modify anything, a select few events are allowed on the body
object by the body object's owner only).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3553 542714f4-19e9-0310-aa3c-eee0fc999fb1
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
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
CommunicationAuthorizer and rolled that into the BodyObject-based
permissions system. A victory for consolidation and elegance.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3380 542714f4-19e9-0310-aa3c-eee0fc999fb1
There is no more SafeInterval, instead Intervals can be constructed with a RunQueue to use for expiring.
PresentsDObjectMgr implements RunQueue.
Client has a getRunQueue() method to get the client side RunQueue.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3283 542714f4-19e9-0310-aa3c-eee0fc999fb1
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
classloader to use when unserializing objects off the network. Also fixed
the way custom classloaders were used as Class.forName(class, true,
loader) seems to be the proper way to go to have caching work and whatnot.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3268 542714f4-19e9-0310-aa3c-eee0fc999fb1