Commit Graph

5314 Commits

Author SHA1 Message Date
Michael Bayne 03ff9f8220 PresentsDObjectMgr.isRunning() is really isNotShutdown() and we need to
preserve those semantics. Sigh.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5945 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-10 19:38:36 +00:00
Michael Bayne f92350f1b3 Bah, don't include the PresentsDObjectMgr's state when trying to assert our
invariants.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5944 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-10 19:36:33 +00:00
Michael Bayne a8d3227fb5 You too. Naughty misreporter.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5943 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-10 19:32:06 +00:00
Michael Bayne 1c60b9cc75 Promote the datagramHostname to the bindHostname and use it for our TCP
connections as well.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5942 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-10 18:34:42 +00:00
Jamie Doornbos 701d885222 Keep track of the total number of units run independently of Stats so it is not reset every 3 minutes by pulse.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5941 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-09 23:59:02 +00:00
Par Winzell 6f7c9831d8 Comment tweak.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5940 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-09 14:50:30 +00:00
Michael Bayne f3fd4d28a5 We need to use the thread context classloader if one has not been specified.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5939 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-07 20:39:32 +00:00
Mike Thomas 2acedb91a4 Better protection against divide-by-zero - if we have less than a second, we'll just round up to 1 second.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5938 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-09-04 22:42:27 +00:00
Ray Greenwell 3aec11f519 This is cloggin' the bureau loggin'.
I'm pretty sure it's the BaseGameConfig.
Typically, clients don't add directly to a StreamableHashMap received
from the server, why would they? So let's just treat it as a String-key map
and shut it up.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5937 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-30 20:40:37 +00:00
Ray Greenwell bf5d3c666f Avast, thar be bugs here too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5936 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-30 00:37:08 +00:00
Charlie Groves e27f0ed5e2 No more setHours
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5935 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-26 22:51:48 +00:00
Charlie Groves 90e11d00b7 More fluency, less effluent
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5934 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-25 23:14:59 +00:00
Michael Bayne 7a95df0c26 Added import for javadoc.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5933 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-25 22:57:34 +00:00
Ray Greenwell 2b5b0389e0 These classes moved from flash-utils back into narya.
Not generally useful to your everyday flash coder.
MessageBundle and MessageManager are built on top of Flex Resources,
and were already being excluded from our asdocs, and TimeUtil uses MessageBundle.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5932 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-25 19:42:47 +00:00
Ray Greenwell da0e42a2b4 Inline references to other classes? That is not the actionscript way.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5931 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-25 19:24:21 +00:00
Ray Greenwell 5e0eb1d970 Fix the asdocs here. But wait, why is this even showing up in the SDK docs?
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5930 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-25 18:56:18 +00:00
Ray Greenwell 1083490e73 Use newMapOf().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5929 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-24 21:36:19 +00:00
Ray Greenwell f8d5e679fd We use StreamableHashMap sensible and only store one kind of key.
Let's guess the type based on the first key unserialized, and guess if it
was empty.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5928 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-24 05:22:05 +00:00
Ray Greenwell c9ea3709f7 Use new Maps factory.
The old HashMap class was a frankenstein one-size-fits-all mess of:
- storing simple objects
- storing Hashables
- having the capability to provide external functions to hash and check
equality of any other type of key.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5927 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-24 02:54:23 +00:00
Ray Greenwell b5de96dc83 It's an ecological disaster!
I'm trashing the Environment!
No more *-env libs.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5923 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-21 22:46:50 +00:00
Ray Greenwell 44480ada4a Use ClassUtil.isAssignableAs().
It works in thane now.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5922 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-21 22:45:36 +00:00
Ray Greenwell 4848fe4b29 Now that ByteEnum has been liberated from depot, lets
support streaming them as bytes.
It's better than writing a modified UTF String, but
it'd be even nicer if we could avoid the short to read the class name
(Enums are final), but I suppose we still have to know whether one is null
or not. Hm.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5920 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-19 02:18:14 +00:00
Michael Bayne cc5a87d18d isEmpty() -> getPendingUnits() == 0.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5919 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-18 23:39:34 +00:00
Ray Greenwell 00416168bb Nix some warnings. One shouldn't be coped with, and so let's let it NPE.
The other happens now in normal circumstances in msoy, and I'd rather
not surround the call to super with an if to avoid this warning, and
potentially kablooie in the future if other functionality is added
to leftLocation in this base class...


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5918 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-18 21:34:51 +00:00
Dave Hoover b04e27f8fa Prune spurious semicolons
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5917 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-17 21:45:13 +00:00
Ray Greenwell a3b20e176b Scratched an itch...
Removed the unholy 'alreadyDisplayed' hack and associated return value
from ChatDisplay.
The localtype should be used to determine whether something should be
displayed. If not, why should ChatDisplay registration order matter?
It shouldn't. If there are two ChatDisplays that could potentially
show the same message and you only want one of them to, sort that
out in your own fuckin' code.
I'm not changing the Java side right now because I'd have to patch-up
a bunch of projects...


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5916 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-15 00:06:12 +00:00
Ray Greenwell 1b17350ee0 Allow command handlers to be unregistered.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5915 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-14 23:45:47 +00:00
Michael Bayne 6e69b98459 Tweaky tweaky.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5914 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-14 22:29:02 +00:00
Ray Greenwell 4a734d00ef Drive-by logging varargification.
Don't ask what I'm doing driving in this neighborhood.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5913 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-14 22:12:56 +00:00
Michael Bayne ee4369df0f Freak out not if we have no client reference.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5912 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-14 21:36:13 +00:00
Ray Greenwell 04316d8620 My actionscript-fu has improved since I originally wrote this.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5911 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-14 03:10:48 +00:00
Ray Greenwell 49f5d7fed8 We don't read creds on the client.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5910 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 23:34:12 +00:00
Ray Greenwell e469bb4abc I'm pretty sure we never read Credentials on the client...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5909 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 23:32:30 +00:00
Ray Greenwell 7489a64555 Every byte is precious!
No need to tell the server the callerOid, it already knows it.
This saves 4 bytes for every listener you pass into an invocation request.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5908 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 19:15:21 +00:00
Ray Greenwell 8284198e57 Don't do it twice. Yes, I'm embracing making things more "actionscripty",
including some implicit coercian to a Boolean, which can actually
be quite dangerous... but only with Strings and Numbers and whatnot.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5907 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 06:23:27 +00:00
Ray Greenwell ac2a633047 Regenerated services, and the callers that love them.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5906 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 06:18:26 +00:00
Ray Greenwell 20f3c6add6 Change how the actionscript services are generated, so that the
client is not required.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5905 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 06:17:57 +00:00
Ray Greenwell fe3d89132d A little bit of tweakery so that the invocation director to use
is known by any invocation marshaller, and so the client does
not need to be passed in.

Just here on the actionscript side for now, but this change may
make its way to Java.

Other changes may follow...


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5904 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-13 06:17:28 +00:00
Charlie Groves 505a9c3a53 Make MessageBundle.getResourceString public so MessageBundles can be composed instead of requiring inheritance to customize them, and open up the bundle creation process in MessageManager to subclass customization
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5901 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-12 20:04:36 +00:00
Charlie Groves 8ca961fc9d Wait for everything to clear before starting the connection manager, and split out the code called when starting said manager so subclasses can override that
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5900 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-12 20:02:01 +00:00
Ray Greenwell 4780fefb73 Wee cleanup.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5899 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-12 18:22:46 +00:00
Charlie Groves 5aefb2a2a6 Check that interdependent invokers are empty when shutting down the PresentsInvoker in addition to
checking the PresentsInvoker itself and the DObjectMgr.  Expose waiting for all theses queues to
empty on PresentsInvoker such that Presents servers can do things like wait for all the queues to
empty before opening to the public.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5898 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-12 08:29:49 +00:00
Jamie Doornbos 5d8a93632e Allow callers to detect when a client is about to die even though it is connected and logged on. This allows handling of the edge case where a client is getting throttled.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5897 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-05 22:12:16 +00:00
Andrzej Kapolka 4dc85174ba Fix for NPE in closing datagram channel.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5896 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-04 19:41:01 +00:00
Mike Thomas 5099dc9d96 Mark run() as an override since it is.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5895 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-04 18:23:55 +00:00
Michael Bayne c3e31440ab Comment some fiddliness.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5894 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-04 16:48:21 +00:00
Michael Bayne 9ce8a7ac71 Moved our peer-aware cron service into Presents from MSOY.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5893 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-08-01 23:01:40 +00:00
Michael Bayne d0d5c2805e StringUtil got moved to flash-utils.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5892 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-30 21:55:40 +00:00
Michael Bayne c0499674e9 Allow an InvocationListener interface to extend another InvocationListener
interface. The way this works is a little tricky, but it all works out.

We have a service SceneService with SceneMoveListener declaration. You can make
FooSceneService and have a method in that service take a FooMoveListener which
extends SceneMoveListener. An instance of FooMoveMarshaller will only be
created if you call the method on FooSceneService and that will result in an
object on the server side that implements SceneMoveListener, but calls to the
SceneMoveListener response methods will result in the FooSceneService response
codes being marshalled and sent back to the caller.

So you can pass the FooMoveListener around to code on the server that expects a
SceneMoveListener and it will magically do the right thing when server code
calls through the SceneMoveListener interface. You can even turn around and
pass the FooMoveMarshaller to another invocation service method (on a peer
perhaps) that takes SceneMoveListener and it will work because the SceneService
call will generate a SceneMoveMarshaller on the remote server, which will use
the SceneMoveMarshaller's codes to communicate the response back to the first
peer, which will unmap those and call the methods on the SceneMoveListener
interface which will remarshal them with the FooMoveListener's codes and send
them back to the client, and bob is everyone's uncle.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5891 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-28 21:34:13 +00:00
Charlie Groves 5dc71a9b8e Preserve varargs in generated marshallers and providers to keep Eclipse from getting in a snit about it
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5890 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-07-24 23:39:35 +00:00