Commit Graph

4960 Commits

Author SHA1 Message Date
Michael Bayne 290d7a9ea1 Freak not out if we fail to determine if our class is local, anonymous or a
non-static member. Pre-1.5 VMs can't do all of these things and Retroweaver
freaks out at runtime when put to the task.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5018 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 19:34:22 +00:00
Ray Greenwell b65bdd47e1 Use a Timer instead of ENTER_FRAME.
This is a potentially more dangerous change, but nothing
seems awry. Eyes peeled!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5017 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 18:17:42 +00:00
Ray Greenwell b367372dc6 Gah, I tried to abort the last commit so I could make this change,
and instead my checkin message got mangled.

*clearing throat*
..So our old way of doing things was pointlessly waiting a frame to handle
network events.
We also ran object subscribe/unsubscribe requests through the same queue,
and now those are processed immediately. Everything seems ok, but let's
keep an eye out.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5016 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 18:07:59 +00:00
Ray Greenwell 19831db930 Stop waiting for ENTER_FRAME to process incoming messages.
This was residual from the initial conversion from Java, but I don't think
it's very necessary on the flash side, and Zell is working to decouple
the presents layer from flash-player specific classes and events like
ENTER_FRAME.
So now we just process everything immediately.
I did some tests, it seems that the flash player dispatches ENTER_FRAME,
then it dispatches any network events, then the frame is rendered.
So our old way of doing things was pointlessly 


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5015 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 18:04:50 +00:00
Ray Greenwell bf55267dac Let's handle the common case first here too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5014 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 17:35:09 +00:00
Ray Greenwell cd9126b55c - Proper casting.
- Handle the common case first.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5013 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 17:32:38 +00:00
Andrzej Kapolka 630d74a5eb Added static methods as in EnumSet, folded in updateSize since it
was only called in one place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5012 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 03:36:35 +00:00
Andrzej Kapolka 86e09be9c6 Added a StreamableEnumSet class (not actually derived from
EnumSet, because Java's implementation of that is private).  The 
performance could conceivably be improved; Java uses two 
implementations, one using a single long to store the element 
flags (for enumerated types with 64 or fewer constants) and one 
using an array of longs (for types with more than 64).  This uses 
an array of bytes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5011 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 02:47:14 +00:00
Michael Bayne 4328cc7875 Yohoho needs to replace the auth response data on the fly. Allow it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5010 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-22 21:23:37 +00:00
Ray Greenwell 5b1b22b955 Removed cruft that long ago was promoted to its own file.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5009 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-22 17:59:52 +00:00
Mike Thomas 4a25cc3f46 If we fail spectacularly in checking localness, let's print out what class is having trouble, since the java libs don't actually do that.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5008 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-21 18:43:30 +00:00
Tom Conkling 8311762471 I blame the beer
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5007 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-19 01:39:55 +00:00
Tom Conkling c6d763127d StringUtil.parseBoolean
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5006 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-19 01:32:21 +00:00
Tom Conkling ab02c0ee30 StringUtil.parseNumber
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5005 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-19 01:06:41 +00:00
Tom Conkling 3b863e30fa Per Ray's suggestion, this returns undefined, rather than null, if the object is not found
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5004 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-17 19:14:42 +00:00
Tom Conkling 855b4f27d4 copy-paste typo fix
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5003 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-17 19:11:12 +00:00
Tom Conkling f0bf02796e ArrayUtil.findIf convenience function
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5002 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-17 19:04:18 +00:00
Michael Bayne f017673964 Disallow streaming of non-static inner classes to avoid the inevitable
freakoutery as we try to stream the instance's implicit reference to its
containing class.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5001 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-17 02:48:04 +00:00
Michael Bayne 784b087ed0 Stop our peer refresher interval when we are shut down.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5000 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-16 22:22:09 +00:00
Ray Greenwell 6736267388 Jamie has discovered that the MultiLoader can sometimes be gc'd before
calling the callback. Loaders are not supposed to do this, but that may
only be when loading over the network and not from a ByteArray.

We know that retaining a reference to the MultiLoader fixes it, but
that increases the burden on the users of this class. Let's try this
instead, I think it will work: just retain references to active MultiLoaders
in the class.

Jamie's going to test this, as well.

(Also: in foreach mode, free references to results after reporting them.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4999 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-15 21:08:25 +00:00
Ray Greenwell 9f51434a57 Bugfix: in foreach mode, we need to report back if a source is already complete.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4998 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-14 03:00:31 +00:00
Charlie Groves 1c4cfe501f Delay notifying the client about the under ass rug yanking until we're in finishResolved in case UserChangeListener.changeReported performs a long operation off the omgr thread and allows the client to respond before _clobj has actually been switched
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4997 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-11 21:04:48 +00:00
Nathan Curtis b82dbb416c Modify requestTell() to accept an optional localFeedback parameter, defaulting to
ChatCodes.PLACE_CHAT_TYPE that gets used for any feedback generated from the tell process.  This 
will allow chat systems that display tells in a custom way (tabs) to distinguish tell-related
feedback from other feedback.  


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4996 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-11 17:03:24 +00:00
Nathan Curtis 6b217c0b2b Sorry little buddy, you're not good enough.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4995 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-10 23:31:43 +00:00
Nathan Curtis 74cb0fa9b9 ExpiringSet, from com.threerings.msoy.chat.client.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4994 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-10 22:49:50 +00:00
Charlie Groves b65487f318 Cut the number of times a service class needs to be specified to two
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4993 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-10 01:18:32 +00:00
Tom Conkling 839d722abf whoops - this was performing an unstable sort, backwards
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4992 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-08 20:24:56 +00:00
Ray Greenwell 9ce195b99d Made the Comparator optional.
Match the coding style already present in file (use ii for loop counter..)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4991 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-08 19:37:00 +00:00
Tom Conkling 7fd7a8dc5b Added ArrayUtil.stableSort
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4990 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-08 19:19:24 +00:00
Michael Bayne b690315196 It's a glorious new year.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4989 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-05 22:46:04 +00:00
Michael Bayne 4c5fc71417 Annotations for documenting methods and classes as "distributed object event
dispatch thread only", "blocking thread only" or "callable from any thread."

As the comment says, some day we'll look into enforcing these annotations with
some bytecode rewriting.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4988 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-05 22:06:59 +00:00
Ray Greenwell 6559b163ed This only need to be unique, not meaningful.
(And yes, code running in a security boundary cannot set aliases, thank god)
Network traffic--.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4987 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-01 02:02:34 +00:00
Ray Greenwell 766643c702 Tested and verified Dictionaries.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4986 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-01 01:50:23 +00:00
Michael Bayne 7853f2fb94 Log the _username instead of the _clobj which might go away.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4985 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-29 17:53:56 +00:00
Michael Bayne 964b68a0fa Beans, frank.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4984 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-28 22:22:34 +00:00
Ray Greenwell 5b29ca6a24 RandomUtil.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4983 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-28 21:02:07 +00:00
Charlie Groves c7126f07d5 The transition needs to happen in ConfigRegistry so it can reserialize the object in its new format, otherwise we're just writing the same String back out to the db
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4982 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-27 21:18:26 +00:00
Charlie Groves c50e78030c * Allow subclasses of ConfigRepository to create the ObjectInputStream used to
read in serialized config values.  
*  Use a transitioning flag in DatabaseConfigRegistry to indicate that it
   should immediately write out config values after reading them in.



git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4981 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-27 01:51:15 +00:00
Michael Bayne 640eb27564 Make leavePlace() properly NOOP if we're not in a place.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4980 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-27 00:58:32 +00:00
Dave Hoover 4d77995e06 Store off a reference to the interval that generates our server reports so that subclasses can play with it if they want.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4979 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-24 21:11:30 +00:00
Ray Greenwell 49b893d933 Good news, it appears that flash blocks things in another security domain
from screwing with our registered aliases. This might make points and
rectangles work.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4978 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-22 01:41:15 +00:00
Michael Bayne 474ba03a8e Allow clients other than peer clients to be ignored.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4977 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-21 00:47:43 +00:00
Ray Greenwell 933183a53a Revert.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4976 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:37:41 +00:00
Ray Greenwell d0a3fa4c8e Occam's razor: presumably getDefinitionByName() returns the same class
for the same name each time it's called. :)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4975 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:30:33 +00:00
Ray Greenwell bb5c4c224c The 'constructor' property is not to be trusted.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4974 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:28:05 +00:00
Par Winzell 51bb4d8e92 I am tentatively meddling with Ray's code because pointer comparison on the class fails for objects that are instantiated... elsewhere. Different application domain? Testing on the full class name ought to be safe.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4973 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:25:36 +00:00
Ray Greenwell 76f77b9748 Support Dictionary, too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4972 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-18 22:13:53 +00:00
Ray Greenwell 783ea0d166 - use isPlainObject()
- support Point and Rectangle.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4971 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-18 22:01:49 +00:00
Ray Greenwell 95e27a7943 Let's print a stack trace when there's an error in the completeCallback,
it could be a ways inside it and we want to help people debug.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4970 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-14 23:08:21 +00:00
Ray Greenwell bb23a5caf1 Two fixes:
- Added a mechanism for testing if something is already loaded after
generation. DataPacks load immediately if passed a ByteArray. Loaders will
always wait a frame, so I was going to change DataPack to follow that
behavior, but it's nice that it just works right after construction.
- If a singleton source was passed in and resulted in an error (or, now,
it can already be loaded as well) then it would incorrectly return
as the result the internal wrapper object for the single result.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4969 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-12 00:31:19 +00:00