authenticators and chained session factories. We can share a lot more code this
way and the implicit requirement that the default authenticator/factory had to
be configured before anyone else configured a chanied author/factory is gone.
The other big change is that Credentials doesn't require a username
(UsernamePasswordCreds inherits that username so most derived classes don't
notice any difference). Instead we require that a canonical authentication
username be determined and configured in AuthingConnection during the
authentication process. This canonical username is then used to resolve the
client session and map everything in the client manager.
This is pretty much exactly what was going on before except that we were doing
it all in an ad hoc way by jamming a new name into Credentials during the
authentication process and also doing jiggery pokery in
PresentsSession.assignStartingUsername. That all goes away and/or becomes
cleaner and more explicit.
This is going to impact some Yohoho jiggery pokery, which I will shortly commit
a patch for, but we're going to need to test it. Omelets, eggs, etc.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5828 542714f4-19e9-0310-aa3c-eee0fc999fb1
sense to annotate an abstract class as a @Singleton. Guice 2.0 disallows it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5824 542714f4-19e9-0310-aa3c-eee0fc999fb1
let's make these things that just add & remove from our collections of
things return the values from their collections.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5823 542714f4-19e9-0310-aa3c-eee0fc999fb1
text settings, you get two columns of tabs, which is...Bad.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5819 542714f4-19e9-0310-aa3c-eee0fc999fb1
messages, treat that like a network failure which will clear out that queue and
shutdown the connection. Overflow queues are only meant to handle sockets that
are backed up, not closed or non-existent.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5813 542714f4-19e9-0310-aa3c-eee0fc999fb1
I did not add true() and false(), because WTF, YAGNI.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5810 542714f4-19e9-0310-aa3c-eee0fc999fb1
way we can remove and re-add the same panel (if it's in a tabbed
pane, for instance).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5807 542714f4-19e9-0310-aa3c-eee0fc999fb1
non-work project). I promise to stop fooling around now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5805 542714f4-19e9-0310-aa3c-eee0fc999fb1
server business. I'd move the whole kit and kaboodle to samskivert but that
would mean moving the DependencyGraph as well...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5804 542714f4-19e9-0310-aa3c-eee0fc999fb1
initialization and shutdown. This will obviate the need for a lot of manual
wiring up. ShutdownManager still works and passes through to LifecycleManager,
but switching to the new deal is encouraged.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5802 542714f4-19e9-0310-aa3c-eee0fc999fb1
la String.intern) as we do class names, by sending the value the
first time and a short code thereafter (with special handling for
datagrams, where me must continue sending the mapping until we
know they've been received). This is mostly useful for the
lengthy config names and parameter names of Project X, but it
could conceivably also be used for things like NamedEvents, which
stream the same object field names many times in the course of a
stream.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5797 542714f4-19e9-0310-aa3c-eee0fc999fb1
hostname, in hopes of fixing the issue with receiving datagrams
from the staging server.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5793 542714f4-19e9-0310-aa3c-eee0fc999fb1
the server starts sending datagrams willy-nilly, it must wait for
a (reliable) go-ahead from the client. Otherwise, it's possible
that the server may be successfully receiving datagrams but not
sending them.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5792 542714f4-19e9-0310-aa3c-eee0fc999fb1
in the dset change (and slap in the todo to make it smart enough to prune
tabs if they should go away, though not showing a now-empty tab is far less
important than actually letting you get at new values)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5788 542714f4-19e9-0310-aa3c-eee0fc999fb1
It's the closest thing to a shutdown.
I've got half a mind to write a LinkedHashMap, and then
an ExpiringHashMap on top of that, and then have
ExpiringHashSet just utilize that in its internals.
But, YAGNI, for now... for now...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5784 542714f4-19e9-0310-aa3c-eee0fc999fb1