Commit Graph

73 Commits

Author SHA1 Message Date
Mark Johnson adf7c0f717 Preparing for 1.15-SNAPSHOT development. 2013-08-27 19:06:27 -07:00
Mark Johnson f685413037 Preparing for narya-parent-1.14.1 release. 2013-08-27 19:00:57 -07:00
Ray J. Greenwell de3ca2b2ef Final tweaks to the reboot manager.
Consolidate warnings and interval scheduling in doWarning().
Don't let the reboot time drift because of delays on the RunQueue.. each
warning is scheduled based on absolute time from _nextReboot.

doWarning() now takes two args so any subclasses that had overridden
it (unlikley beyond PX) will break...

PendingShutdownObservers will now get the actual milliseconds until reboot.

Basically: after all this, things should essentially work the same except
now there is a protected three-arg version of scheduleReboot that lets you
schedule an exact time, bypassing the normal round-up to the next highest warning time.
2013-08-23 16:34:35 -07:00
Ray J. Greenwell 84e074103b Allow scheduling reboots at exact times.
Previously a reboot time was only exact if it was further away than
the first warning. Otherwise, the time was rounded upwards to
the next warning time. This is probably still desired for manually
scheduled reboots, but when trying to coordinate reboots between
nodes we need to be able to schedule them exactly even if we're
already in the warning phase.
2013-08-23 15:25:45 -07:00
Ray J. Greenwell f3e24f5e89 Added cancelReboot(). 2013-08-23 14:26:47 -07:00
Ray J. Greenwell e67b9e224f Tweaks to the way the reboot manager computes scheduled reboots.
- Previously if you scheduled a reboot for 5am every day, but the
server came up at 3am, it would schedule the reboot for 5am the next
day. Subtract a day if the current time is before the rebootHour.
- When skipping weekends always push the time out rather than
pulling it in. Questionable, but so was the previous behavior.
If you set it to reboot daily but skip weekends, it would not
skip weekends.
2013-08-23 13:28:02 -07:00
Michael Bayne c54b158abd Notify client observers directly if we're already on the RunQueue thread.
This avoids a needless wait in the run queue for most notifications. Only
notifications that result directly from something one of the communicator
threads did will need to do a loop de loop.

This should close the hole where ClientObserver could be told that the
ClientObject was available *after* some events have come in on the ClientObject
(which they then miss). Now when the subscription response comes in for the
ClientObject, observers are notified immediately, and will be wired up and
ready for any messages that are themselves already in the queue ready to be
dispatched.
2013-08-23 10:29:48 -07:00
Michael Bayne 0f205c2e6d [maven-release-plugin] prepare for next development iteration 2013-05-07 14:26:02 -07:00
Michael Bayne 9e5f451fa6 [maven-release-plugin] prepare release narya-parent-1.14 2013-05-07 14:25:53 -07:00
Michael Bayne a878b744fc We need the latest gwt-utils to get rid of guava-jdk5. 2013-05-07 14:23:41 -07:00
Michael Bayne d62faf77c4 Depend on latest biz. 2013-05-07 14:16:00 -07:00
Ray J. Greenwell b89ea9452f Fail with an informative message if there are NO constructors.
Which shouldn't happen.
And re: the last commit, this is only called once for each class
so the deal wasn't so big.
2013-03-20 18:05:26 -07:00
Ray J. Greenwell 09ff91cbdb Let's just reflect once when there's no 0-arg constructor. 2013-03-20 18:02:36 -07:00
Mark Johnson a8271a782d Preparing for 1.14-SNAPSHOT development. 2013-02-12 15:35:37 -08:00
Mark Johnson 4388b79264 Preparing for narya-parent-1.13.2 release. 2013-02-12 15:29:15 -08:00
Mark Johnson e88ffcce66 Have PresentsServer pass itself to PresentsInvoker when starting the thread instead of being
injected directly into the invoker to prevent potential circular dependency issues.
2013-02-05 15:47:29 -08:00
Mark Johnson 86f5073d19 Preparing for 1.14-SNAPSHOT development. 2013-02-05 14:09:21 -08:00
Mark Johnson 6d0e7055d4 Preparing for narya-parent-1.13.1 release. 2013-02-05 14:03:56 -08:00
Mark Johnson d86c851856 Require passing in the DObjectManager for activatePeriodicReport instead of injecting it which was
causing a circular dependency
2013-02-05 13:48:57 -08:00
Mark Johnson 8d110fc23e Move to guice 3.0 2013-02-05 13:44:55 -08:00
Michael Bayne f099a230dc [maven-release-plugin] prepare for next development iteration 2013-01-23 14:51:41 -08:00
Michael Bayne df4c0ef33a [maven-release-plugin] prepare release narya-parent-1.13 2013-01-23 14:51:35 -08:00
Michael Bayne 48b80f8005 Depend on public shipped version of gwt-utils. 2013-01-23 14:41:59 -08:00
Mark Johnson 5c62c2026c Preparing for 1.13-SNAPSHOT development. 2012-12-18 15:47:07 -08:00
Mark Johnson c6711b6d99 Preparing for narya-parent-1.12.8 release. 2012-12-18 15:33:58 -08:00
Ray J. Greenwell 899c976ee7 Whoops: if the stopwords were empty, the pattern matched everything. 2012-12-12 14:17:54 -08:00
Ray J. Greenwell 3ba24a3dc5 Bugfix: cope with an empty stopwords list. 2012-12-12 13:32:49 -08:00
Mark Johnson 48557b0cf9 Preparing for 1.13-SNAPSHOT development. 2012-10-16 16:06:10 -07:00
Mark Johnson bdfd25de49 Preparing for narya-parent-1.12.7 release. 2012-10-16 15:59:11 -07:00
Ray J. Greenwell b548568cff Move to gwt-utils 1.7-SNAPSHOT. 2012-10-10 12:58:00 -07:00
Ray J. Greenwell 20d93c1bf6 Move to depot 1.6, and gwt-utils 1.6-SNAPSHOT
Unsure if moving to a snapshot in here is bad juju.
2012-10-10 11:19:03 -07:00
Ray J. Greenwell 5082c25185 Use ooo-util 1.3. 2012-10-02 17:06:06 -07:00
Ray J. Greenwell 776db7fe26 Avoid "if false return false".
But really, these methods should throw an Exception if the key is no good.
Not just return false, which nobody is probably checking.
2012-09-14 11:16:50 -07:00
Ray J. Greenwell 6cfc0890c6 Presumably this should call isAuthenticPeer().
Otherwise nothing calls it.
2012-09-14 11:15:57 -07:00
Ray J. Greenwell 644d35505f Preparing for 1.13-SNAPSHOT development. 2012-09-11 17:43:11 -07:00
Ray J. Greenwell b7f11d24d9 Preparing for narya-parent-1.12.6 release. 2012-09-11 17:40:25 -07:00
Ray J. Greenwell ac9083dda5 De-fuckup the /help command handler.
- Put "/help " (with a space after it) in the history so that it's useful.
- Don't return the usage as an error, or the chat entry field
  won't clear. What the fucking fuck? Seriously, there was a 3-fucking-line
  comment in here about doing the right thing and someone ignored it
  and made it do the wrong thing.

SK has been doing the wrong thing in response to chat errors, and now I worry
that games that used to do the right thing have changed to do things
incorrectly because the fucking help command has been fucked up for 2 years.
2012-09-07 11:37:38 -07:00
Mark Johnson 41fab5576e Preparing for 1.13-SNAPSHOT development. 2012-09-05 13:33:45 -07:00
Mark Johnson deb648143c Preparing for narya-parent-1.12.5 release. 2012-09-05 13:24:20 -07:00
Ray J. Greenwell 1cafd937b1 Nix null as a nodename: have an explicit adHoc flag.
The hostname being null interfered with peer locks.
Instead let's just allow ourselves to be inited in
"adHoc" mode.

init()'s overloads are becoming overloaded...
populating a properties object might be better...
2012-08-22 19:18:59 -07:00
Ray J. Greenwell 4d8feb215b Nix cruft. 2012-08-13 15:45:27 -07:00
Ray J. Greenwell 7c4a98b3ec Whitespace. 2012-08-08 15:13:45 -07:00
Ray J. Greenwell 24a5800536 More checks for nodes without node objects.
When a NodeAction was queried for which nodes were applicable, it
filtered out nodes that didn't have a nodeObject.
However, when a NodeRequest is similarly queried, null nodeObjects
were not filtered out and I guess it was up to the NodeRequest to
say "no" to null nodeObjects. This is not part of the API specification
for NodeApplicant, and in Spiral Knights we have various requests/actions
that simply return true without regard to the contents of the nodeObject.

So that's fucking retarded. Do the null check just like it's done
for NodeActions. In addition, do an extra check if one of single-node
methods is called for an action or request, to make sure that one
pre-determined node has a nodeObject set up. If not, log a warning,
and return an error response in the NodeRequest case.
2012-08-08 15:04:05 -07:00
Ray J. Greenwell 78515ffcdb Compare node names safely.
And other further fixes to "ad-hoc" nodedness with only one node.
2012-08-08 14:41:51 -07:00
Ray J. Greenwell 829139b1e7 Don't save the NodeRecord if our nodeName is null.
This is to support running in ad-hoc, single-node noded mode.
However, it appears some code in here will choke on a null
node name.

This is for something in Spiral Knights, where we used to run
in non-noded or noded mode, and so we already cope with the
nodeName being null. Now we want to always run noded, so that
we can DRY and not check various local variables before checking
the (other) NodeObjects: now we can just check against all
the node objects.

So I may need to return here and make safe various equality
checks against the nodeName.
2012-08-01 18:44:49 -07:00
Ray J. Greenwell 2a0acc28ba Prepare (again) for 1.13-SNAPSHOT development. 2012-08-01 18:44:19 -07:00
Mark Johnson e1c6195134 Preparing for narya-parent-1.12.4 release. 2012-07-24 14:35:55 -07:00
Pär Winzell ee10d553a8 It's no longer necessary or even useful to keep IDEA module files around. 2012-07-23 12:07:30 -05:00
Pär Winzell 53bb1112b5 Narya Core doesn't need a Flex facet.
There is really no reason to maintain a .iml file in the repository anymore. This project can be loaded directly from POM files without trouble. I propose deleting this file.
2012-07-20 09:46:10 -05:00
Ray J. Greenwell 0686b3f8ee Update comment with new method name. 2012-07-19 13:13:45 -07:00