Commit Graph

5802 Commits

Author SHA1 Message Date
Michael Bayne 31eda1cfc9 Let's do that *after* we've checked sochan for nullity.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5871 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 02:12:57 +00:00
Michael Bayne 0cf6b6199e Don't try writing overflow messages for an outgoing connection that is still
waiting to connect.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5870 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 02:12:24 +00:00
Michael Bayne 231edfa66e applyToNodes() is superfluous now that we have getNodeObjects().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5869 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 00:59:32 +00:00
Michael Bayne 047dd3b871 Sprinkled some functional programming onto node object handling.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5868 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 00:55:03 +00:00
Michael Bayne 9cdd93ee11 Publish our server startup time in our NodeObject.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5867 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 00:34:19 +00:00
Michael Bayne 646b438404 We need commons-collections as well for our velocity-using tools.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5866 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 00:29:59 +00:00
Michael Bayne c6ba34a129 You'd think that calling isConnectionPending() would return true on a channel
that would throw a NotYetConnectedException when you tried to write to it. Yes,
you'd definitely think that.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5865 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-13 00:22:24 +00:00
Michael Bayne 4bcc8ab7c4 Less spammy ant task error reporting, further narya-tools dependencies.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5864 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-12 22:19:22 +00:00
Michael Bayne f7152e9ac6 Throw a build exception if Velocity freaks out.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5863 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-12 22:05:39 +00:00
Michael Bayne 1e2b48deb2 Shorten the property file name.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5862 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-12 22:02:49 +00:00
Michael Bayne 1e5b1e5a7f Place all of our tools into narya-tools along with all of their dependencies.
Provide an ant properties file that defines all of our tasks in one fell swoop.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5861 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-12 22:00:36 +00:00
Michael Bayne e9f3d53a76 Nix commons dependencies.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5860 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-12 21:14:37 +00:00
Ray Greenwell 83ce3f004e Added ByteEnum interface to ActionScript, and ByteEnumUtil.
Use this if you want your enums to persist to a byte reliably.
Coming soonesque: narya streaming support for ByteEnum.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5859 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-11 00:08:41 +00:00
Ray Greenwell 6dbdf8d413 Killed fromOrdinal().
Not available in Java, and generally a bad idea.
Pretend ordinal() doesn't exist, unless you're writing EnumSet, or something.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5858 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-11 00:06:23 +00:00
Tom Conkling 10c1da22bd case-insensitive String comparison util
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5857 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-10 20:24:45 +00:00
Michael Bayne 6d740bf7b3 Truth in commenting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5856 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-10 06:31:49 +00:00
Michael Bayne 95bae1dec8 We need to distinguish between a connection that is still pending (which may be
the case for an outgoing connection since we do our connection asynchronously)
and a connection that is no longer connected because it once was open and now
it's closed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5855 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-10 06:30:41 +00:00
Charlie Groves 266595e2a0 Disallow access to atunit/lib/com/google in atunit.jar
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5854 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-08 21:06:48 +00:00
Charlie Groves 03408cbda8 Don't allow the dummy DObject to be destroyed. That shouldn't happen in the normal course of
operations, but previously if someone called destroy on an uninitialized DObject or called
PresentsDObjectManager.destroyObject with its oid, it'd be destroyed.  Subscribing to objects
depends on that object existing, so if it's destroyed, the server will continue to function normally
except that subscription requests will be silently dropped.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5851 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-05 23:18:51 +00:00
Tom Conkling c260457c6e Whoops
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5850 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-04 23:06:07 +00:00
Tom Conkling 95a159016f Utility function for converting from ordinal to Enum
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5849 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-04 22:48:21 +00:00
Charlie Groves 21712c5883 Just say it
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5848 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-04 00:07:22 +00:00
Michael Bayne c835698e9f We can't inject the PresentsDObjectMgr because that causes a circular
dependency, but we can inject RunQueue which will Guice will magically defer to
avoid the circularity.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5847 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-03 23:26:00 +00:00
Michael Bayne 4731294773 Instead of having to disable the periodic server reports with a cumbersome
specialized ReportManager, let's just not activate them by default.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5846 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-03 23:09:04 +00:00
Michael Bayne 08292eec9e Ehcache 1.6.0 requires an implementation of getScheme(). I'm not 100% clear
what this is meant to do, but I'll sort that out once I have it up and running.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5845 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-02 20:59:04 +00:00
Tom Conkling 3eb6ee2a4f Add comment for potentially non-obvious behavior
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5844 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-02 19:14:55 +00:00
Michael Bayne 97befada23 We can just inject the injector.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5843 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-01 19:02:45 +00:00
Charlie Groves f80e1f07d8 Break out command prefix checking
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5842 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-30 22:39:31 +00:00
Charlie Groves 4d3f79d732 If we hit an exact match in looking for command handlers, return only it and ignore any other
commands that are prefixes.

Do we have something like ImmutableMap.of(key, value) for regular Maps?  It would've been nice here.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5841 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-30 22:15:20 +00:00
Michael Bayne 437c7a3b64 Some name cleanup (client -> session).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5840 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-23 18:21:19 +00:00
Michael Bayne feb270d4d3 Let the client do funny things with authname in startSession().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5839 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-23 18:17:17 +00:00
Michael Bayne 7efa2c74a7 Tidy up name handling a bit more: when setUsername() is called on a
PresentsSession, we don't need to or want to change our auth name, we can and
should operate entirely on ClientObject.username. The ClientManager maintains
two mappings: "current username" -> ClientObject (which is what needs to change
when setUsername or updateUsername is called) and "authname" -> PresentsSession
which has always been just the authname and has never changed during the course
of a session.  PresentsSession.getUsername() goes away and
PresentsSession.getAuthName() always returns the name that was used to
authenticate the session.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5838 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-23 06:20:31 +00:00
Dave Hoover 0df7b9681a Instead of hiding a default for that switch up at comic,
let's name all the legal values for that enum, yell in
the one wacky case that shouldn't be possible, and let the
compiler yell at us if we ever add more things to CurseFilter.Mode
and forget them in that switch


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5837 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 23:46:06 +00:00
Michael Bayne de3e23baac The JVM's heap status at server startup is not hugely useful.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5836 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 22:26:13 +00:00
Michael Bayne 2c2e28f5ed Move our EHCache peer coordinator down here where other projects can use it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5835 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 22:10:34 +00:00
Michael Bayne fcda0f3156 Added internal hostname reporting, documented other PeerNode methods.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5834 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 22:05:06 +00:00
Michael Bayne 55f66f01da Use AuthException.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5833 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 19:05:51 +00:00
Michael Bayne dcc04247ab Provide AuthException to simplify auth failure handling for Authenticator
implementations.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5832 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 18:52:17 +00:00
Dave Hoover 7db51dafdb Mark overrides
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5831 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-22 17:36:32 +00:00
Jamie Doornbos a08e21e840 Removed unused code
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5830 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-20 21:40:12 +00:00
Michael Bayne 6e9077780c Added/updated source headers.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5829 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-20 21:09:34 +00:00
Michael Bayne a1aa2d77ae Revamping/cleanup of how we handle authentication usernames as well as chained
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
2009-06-20 00:56:01 +00:00
Charlie Groves 7d125bec73 KeepNoHistory is implemented by data objects, so it needs to live in data
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5827 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-17 01:33:15 +00:00
Charlie Groves 501e62616c Add a marker interface that Names can implement to indicate to SpeakUtil that they don't need chat history
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5826 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-17 00:07:24 +00:00
Dave Hoover 09b965dae5 This may no longer be one of those since we can scroll the tabs on our
config editor


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5825 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-16 22:13:45 +00:00
Michael Bayne 3a2fe8329c @Singleton annotations are not inherited (unfortunately), so it does not make
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
2009-06-15 22:17:56 +00:00
Dave Hoover 647897cd6d This may cause small breakage for folks extending ChatDirector, but
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
2009-06-10 21:17:51 +00:00
Dave Hoover d85244e4e9 s/validator/filter/ in an appropriate place, and some other comment widening
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5822 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-10 21:01:33 +00:00
Dave Hoover c016fab8e8 Break a few parts out for use in subclasses
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5821 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-09 21:00:21 +00:00
Ray Greenwell c3845a8b15 Fix simpleToString() per Tim's desire:
Cope with a bogus passed-in property name.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5820 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-06-09 18:16:16 +00:00