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
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
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
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
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
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
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
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
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
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
Mike Thomas
6e0bd68148
Roll back the interrupt() yet again - 1) it didn't fix the problem we were trying to fix and 2) it was causing problems with logoff.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4968 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-10 17:20:03 +00:00
Mike Thomas
1076052701
Remove the temporary debug logging.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4967 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-08 01:34:42 +00:00
Mike Thomas
b097e46637
Need a default constructor visible to our descendants.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4965 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-08 00:35:07 +00:00
Mike Thomas
4fabfcf0f3
Resort to adding some temporary logging printouts to BlockingCommunicator to figure out what's keeping the reader thread from being shut down.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4964 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-07 23:53:19 +00:00
Mike Thomas
0af0ce8469
Re-instate the interrupt() but setup some additional exception handling so we don't spew to the logs unnecessarily due to this.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4962 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-07 20:09:13 +00:00
Mike Thomas
69646f624b
Roll this back - calling interrupt() in this way caused the other end's writer to get fairly upset.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4961 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-06 21:43:08 +00:00
Michael Bayne
d153a06aa2
Reinstate the kick in the pants for the reader thread. Previously we relied on
...
the LogoffRequest being received by the server which resulted in the server
closing its end of the socket which resulted in the reader being woken up to
hear that its socket was closed and then it exited. We'll just have it exit
immediately. It's possible that messages in transit to the reader that would
have been read prior to full shutdown will now be dropped instead of delivered,
but the client has already requested to logoff, so they can't really care about
additional messages coming from the server.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4960 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-06 19:14:19 +00:00
Michael Bayne
8a745b30e0
Listen for SIGTERM as well and gracefully shutdown in that case.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4959 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-05 23:28:28 +00:00
Mike Thomas
e8b5d41fb8
Split out the way we handle the preferred port so we can override that.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4958 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-05 19:09:36 +00:00
Dave Hoover
0b068d5189
You know, generifying that correctly is actually a big scary tunnel of dealing with
...
our generated services & whatnot, so that's a much deeper rabbit hole than I was
thinking when I just did that one big, so I'm going to leave that well enough alone
for now instead of half-assing it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4949 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-03 22:11:45 +00:00
Dave Hoover
8c5e04aac5
Generify.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4948 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-03 22:06:49 +00:00
Ray Greenwell
f52f686f19
Use the enhanced for-loop.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4943 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-02-21 02:30:26 +00:00
Charlie Groves
8a7f4c4121
Clarify that SetListeners get all Entry events, not just the ones for a particular set
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4939 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-02-19 23:05:30 +00:00
Charlie Groves
7564f88796
Expose the type on Entry* events to SetListener and SetAdapter
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4938 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-02-19 20:40:09 +00:00
Dave Hoover
4f5d065405
Access this static method in a static way.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4928 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-01-31 21:26:37 +00:00
Dave Hoover
24f557c0d7
Speeling
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4924 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-01-22 23:57:54 +00:00
Dave Hoover
2ce35db583
Remove unneeded casts.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4923 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-01-17 01:25:52 +00:00
Charlie Groves
643982e798
If we just bail after a connection closes during resolution, the ClientManager still thinks we're resolved and can just resume the session if the client reconnects. Resuming fails because we don't have _clobj to resume with, so the client fails to connect over and over again until the half-connected client is flushed from ClientManager's cache several minutes later. Just clear the client out of the cache immediately instead.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4920 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-01-08 04:12:35 +00:00
Michael Bayne
768e6a76be
Create our shutdowner list at class init time so that it is safe to register a
...
shutdowner at any time.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4915 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-20 22:05:49 +00:00
Ray Greenwell
dd8fcfc0a7
Allow subclasses to translate the status if a nonstandard one is in use.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4911 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-19 19:14:47 +00:00
Michael Bayne
5e2a70bf5c
Nix marker interface that's not used by anything. If we do ever want something
...
like this, we can think about where the interface would be useful.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4910 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-18 00:19:56 +00:00
Michael Bayne
6e55c2df8b
Use samskivert signal wrapper.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4909 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-17 22:23:51 +00:00
Dave Hoover
289475b253
Keyword substitution.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4893 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-03 21:07:34 +00:00
Michael Bayne
4c4d253974
Let's add a couple more very handy helper methods.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4891 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-03 19:54:58 +00:00
Michael Bayne
cb46d3a1af
Allow the unit to throw InvocationException and do the right thing with it.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4890 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-03 19:45:53 +00:00
Michael Bayne
c935c46612
Handle the client connecting and disconnecting before client object resolution
...
completed, or connecting, disconnecting and reconnceting before client object
resolution completes a little more gracefully.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4889 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-03 18:28:07 +00:00
Michael Bayne
983adf75e5
Nix the wacky arguments thing. Let the caller simply beware.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4885 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-28 01:03:49 +00:00
Michael Bayne
69a1d2ec23
Slight change to usage and documentation.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4884 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-28 00:47:16 +00:00
Michael Bayne
95adfeb646
Regenerated services.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4883 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-28 00:25:35 +00:00
Michael Bayne
9e835ff6e9
Added a way to package up an action and data and send it to all appropriate
...
servers for execution. The class in question must exist on the remote server
but all of our servers are all always running the same code, so this follows.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4882 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-28 00:25:23 +00:00
Michael Bayne
63db77667a
Some type safety, redundant cast removal, and other code hygiene.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4879 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-24 19:40:19 +00:00
Dave Hoover
6eb2c79b19
Flag overrides in this template.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4878 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-21 19:16:05 +00:00
Mike Thomas
aa418e19ee
If the reboot time requested is at exactly the right time for the warning, we can use that warning and not require to go to the next level.
...
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4877 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-20 18:26:31 +00:00
Michael Bayne
576dfa2c85
If a move fails and we're currently in a place, just stay where we are rather
...
than trying to go to our previous place. If we're no longer in a place (like we
switched servers to get where we're going), then we'll try to go back to our
previous place.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4875 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-15 01:59:22 +00:00
Michael Bayne
5ae87258fa
If we lose our connection, let anyone who had a pending subscription request
...
outstanding know that their subscription request failed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4873 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-13 02:56:35 +00:00