Commit Graph

51 Commits

Author SHA1 Message Date
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
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
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
Jamie Doornbos 8dd6472824 Allow client code to detect whether or not the client is connected, since isLoggedOn returns true during the dispatch of CLIENT_DID_LOGOFF. This will allow msoy to prevent the display of room change popups when the client is disconnected.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5790 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-05-19 18:05:07 +00:00
Ray Greenwell c192056f3a Listen for security errors on our socket.
Have the FrameReader stop listening on the socket when we're done with it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5707 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-04-03 17:40:54 +00:00
Michael Bayne 5d0a86c698 If we never dispatched a DID_LOGON, then don't dispatch a DID_LOGOFF. Dispatch
a FAILED_TO_LOGON instead.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5688 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-03-19 23:40:03 +00:00
Michael Bayne d4f1e7763c Send our auth request directly instead of running it through the queue. Also
log our boot groups to make it easier to distinguish which "server" we're
logging onto.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5675 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-27 03:13:08 +00:00
Michael Bayne ba7a7af8d3 Sanity++. In theory this is functionally equivalent.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5661 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-19 21:08:07 +00:00
Ray Greenwell df5f5ace27 Cut client latency by attempting to send upstream messages
immediately.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5592 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-10 21:41:10 +00:00
Jamie Doornbos 79f5a17600 Oops, stray debug line got left in
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5549 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-14 01:51:28 +00:00
Jamie Doornbos 71af5514da Be nicely behaved if the user manages to close the client before the socket is opened
* Use _writer != null iff the socket is open and the authrequest has been sent
* Warn when posting messages prior to socket connect
* Clear the outgoing queue prior to sending the auth request, the servers authing connection expects this
* If a logoff is encountered prior to the socket opening, just shut down without sending auth request
* Driveby unused variable removal

This should fix the log warning "AuthingConnection$1: Received non-authreq message during authentication process"

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5548 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-14 01:49:58 +00:00
Michael Bayne ca2dc8dc4a Don't start our writer thread until we know our socket is connected and ready
to send data.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5544 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-12 00:32:54 +00:00
Jamie Doornbos 14755a6cea Fixed fundamental flaw with throttling code. Changed the client to adjust its message rate when it actually sends the throttle updated message. Otherwise the client starts sending at the new rate before the server knows about it. Keep the messages per second in the message.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5499 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-04 08:37:13 +00:00
Jamie Doornbos 2b298aa3d5 Pass in the expected type to readObject anywhere the code would clearly convert the wrong type to null anyway
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5440 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-11 06:28:50 +00:00
Michael Bayne a4a25674ce Outgoing message throttle for ActionScript. This uses a timer rather than a
frame listener so that it has a chance of working out of the box on Thane.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5432 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-10 17:27:47 +00:00
Jamie Doornbos 3bbd9da353 Fixed spurious warnings about sockets on bureau shut down:
* socketClosed was issuing a warning, presumably because whirled doesn't normally disconnect flash client. Anyway, seems like overkill since the server can disconnect whenever it choosed
* Accoring to adobe, calling Socket.close after the Socket.close event should throw an IOError. Thane holds to this, while flash apparently does not. Make our code neutral by checking for connected prior to calling close

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5415 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-07 16:06:45 +00:00
Jamie Doornbos 8b48ab9107 Include the offending message when reporting a short frame
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5328 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-17 03:39:26 +00:00
Michael Bayne 6bf19ba419 We need to tell the clients that we did logoff after we've actually shutdown
and clear out our socket. The DID_LOGOFF notification is sent out to the client
after we've sent our LOGOFF request to the server, so we need to be sure that
no other messages go to the server after the LOGOFF request otherwise we risk
the server generating spurious warnings (like it does currently in the
thousands daily).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5297 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-08-07 20:58:16 +00:00
Par Winzell 971ec75567 Some manual unused-import removal. I think one or two of these might need further Jamie lovin' but I want to get ABC compilation running.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5039 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-06 17:12:42 +00:00
Par Winzell 5cae3fb3a3 This is no longer useful to us.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5034 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-01 00:00:27 +00:00
Ray Greenwell 376f5e680a Sorry, Log, no more free ride for you.
Putting you at the top level screws up use of another Log class.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4874 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-13 09:30:23 +00:00
Ray Greenwell 546c44c600 Stop trying to recover from this error (it doesn't work), but try logging
the event target.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4644 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-04-04 21:40:03 +00:00
Ray Greenwell d389b22cd5 Try ignoring the error...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4639 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-03-30 22:03:59 +00:00
Ray Greenwell 77ff647b1a Maybe a stack trace can tell us more about our mysterious error.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4638 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-03-30 21:34:07 +00:00
Michael Bayne 09f0bee0f3 Yet more header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-24 00:39:27 +00:00
Michael Bayne cb5fd7ff55 I write two lines in the morning. I write two lines at night.
I write two lines in the afternoon and it makes me feel alright.
I write two lines in times of peace, I write two in times of war.
I write two lines before I write two lines, and then I write two more.

Bringing ActionScript world into line with the Javver.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4556 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-11 03:28:48 +00:00
Ray Greenwell 91b50cd0b8 Took care of some TODOs.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4440 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-11-01 03:52:29 +00:00
Ray Greenwell 2c84eb9251 Added hexlate() and unhexlate() to StringUtil.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4363 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-09-08 02:30:12 +00:00
Ray Greenwell 53aacc4bbc Added ClassUtil.isSameClass(), reimplemented another function using
the constructor property.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4322 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-12 01:19:30 +00:00
Ray Greenwell e16d838b18 Be sure to generate a DID_LOGOFF event, and a few other bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4283 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-21 21:28:57 +00:00
Ray Greenwell d948eb4f37 Added a really basic Config class for storing prefs clientside,
wired it up.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4184 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-06-08 22:12:19 +00:00
Ray Greenwell e6e96c25fc Ported over the automatic port-retrying code, but had to modify some things
due to differences in the way flash throws errors (and apparently can't
re-use a socket object).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4183 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-06-08 21:44:27 +00:00
Ray Greenwell 9b11d03b46 Added a Cloneable interface, fixed up a few bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4148 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-25 01:18:04 +00:00
Ray Greenwell a22ca8b079 Simplified logging facilities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4131 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-19 22:47:44 +00:00
Ray Greenwell 7ec9c8d642 Let's name inner classes with an "_" where Java puts a "$", and do
automatic name translation for those names.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4129 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-19 02:23:47 +00:00
Ray Greenwell e100ef4faf Updated to match API changes in Beta3.
InvocationRegistration had a constructor called Registration. I wonder if
that was causing the compile error with beta2.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4104 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-09 23:03:47 +00:00
Ray Greenwell ad9a3e54e3 Updated some bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4058 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-26 00:47:49 +00:00
Ray Greenwell 538803e1fb Checkpoint. Closing in on getting a chat client up, but slogging through
annoying streaming issues.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3984 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-28 01:27:57 +00:00
Ray Greenwell 04255b383b Checkpoint.
Never in my life have I spent so much time debugging so little.
I think the flash player is full of bugs, I've learned to just run
everything two or three times and chase the error that happens the most. Fun!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3929 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-09 02:55:07 +00:00
Ray Greenwell d8276bb4a9 More crap, some new discoveries, backtracking, annoyance.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3918 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-07 03:49:33 +00:00
Ray Greenwell cec3ffe59d Fixed up some things and added streaming translations.
I'm to the point where I need to go back to array streaming and straighten
that out.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3905 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-02 03:44:37 +00:00
Ray Greenwell 76ae4d5f5a Added Log facilities like we're used to, and discovered a host of
new wacky things (and possible compiler bugs) on the way.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3888 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-24 01:28:55 +00:00
Ray Greenwell 465b680aa2 Fixed some bugs with reading data back from the server, including
subtracting 4 from the length of the frame and fixing the reading
of fields for which we have a basic streamer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3885 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-23 22:22:57 +00:00
Ray Greenwell bd235efe20 Ah, the length of the frame is the length of the data plus the length of
the bytes used to transmit the length! So for our purposes, we just add 4.

I now have the ActionScript client authenticating with our server code!
Lots more to do...


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3882 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-23 01:45:13 +00:00
Ray Greenwell 5a9a018867 Commented a few classes as abstract,
debugging..


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3878 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-22 06:28:27 +00:00
Ray Greenwell ea0a3dce06 Well, it compiles.
It's not functional, there are still large holes in the implementation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3868 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-20 03:53:04 +00:00
Ray Greenwell 7a80c5cb43 Got compiling working under Linux, now correcting various errors.
Checkpoint.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3866 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-20 02:38:56 +00:00
Ray Greenwell 74c35b6d65 More progress.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3861 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-17 05:11:31 +00:00
Ray Greenwell 1d36299e3c Some work on streaming.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3855 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-15 01:41:14 +00:00
Ray Greenwell 4d7fb64b8c More progress.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3849 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-14 04:07:02 +00:00