Commit Graph

212 Commits

Author SHA1 Message Date
Tux b375b5402d Fix some FindBugs issues. 2015-01-25 00:04:34 -05:00
Tux f201cdc4e8 Make NameFetcher less hazardous to ones health. 2015-01-25 00:02:30 -05:00
vemacs 20ef1ee284 Use new-new method with a better ratelimit 2015-01-09 07:45:45 -07:00
vemacs 6511e2154f Revert "Revert to old method as the new method has changed"
This reverts commit 16ce4eb696.
2015-01-09 07:44:03 -07:00
Tux 16ce4eb696 Revert to old method as the new method has changed 2015-01-07 20:28:28 -05:00
Tux 5c9664c344 Use proper exception handling in UUIDTranslator. 2014-12-29 11:40:34 -05:00
Tux 5a0509ac48 Allow RedisBungee to give the console an IOException instead of a unhelpful exception + NPE combo. 2014-12-27 18:30:26 -05:00
vemacs 5010670d95 Remove cache, actually fix NameFetcher 2014-12-27 16:26:21 -07:00
vemacs e13a8de1d7 Possibly fix namefetcher 2014-12-27 14:00:09 -07:00
Tux 62eacc5816 Expose previous server. Closes #11, #12 2014-12-07 16:15:39 -05:00
Tux 47fc9792b0 Set default maximum Redis connections to 8. 2014-11-26 17:30:25 -05:00
Tux e630116ff8 Better handling of improperly-fetched Jedis resources. 2014-11-26 17:26:51 -05:00
vemacs cb61d90d6c Unregister listener, revert getCount() changes 2014-11-26 10:00:05 -07:00
vemacs e483b9abeb There seems to be a bug in the BungeeCord scheduler, cancelling all tasks for a plugin doesn't cancel all tasks for a plugin. 2014-11-26 09:28:50 -07:00
vemacs 7df764c418 Don't spam exceptions when pinged after disable 2014-11-26 09:15:53 -07:00
Tux d438186682 Do not allow unsubscribing from RedisBungee internal channels and properly poison the PubSub handler this time. 2014-11-02 14:16:41 -05:00
Tux 8ac70e801f Use ImmutableCollection.asList() and document this fact. 2014-11-01 12:54:23 -04:00
Tux aa772ddf1b Reformat source code. 2014-09-21 13:56:46 -04:00
Tux e0ee2ada21 Migrate from the consumer model to ExecutorService. The consumer was not flexible and was less reliable. 2014-09-21 13:55:14 -04:00
Tux 0dda93bfc8 don't use redis SYNC command 2014-09-20 00:08:36 -04:00
Tux bafe894298 Removed pipelining and other fixes. 2014-09-11 16:38:40 -04:00
Tux 75939ef661 Detect inconsistency of players who are online but not registered in Redis. 2014-09-11 16:19:50 -04:00
Tux 9d392a32e5 Introduce new network events and add @ToString in PubSubMessageEvent for easier debugging. 2014-08-31 13:16:51 -04:00
Tux b38ff5d1b4 Add /pproxy command to request the proxy where a player is connected. 2014-08-20 21:31:02 -04:00
Tux 6fadd9e4c6 Fix priority of ProxyPingEvent. Closes #8 2014-08-18 15:35:29 -04:00
Tux 5102c39ee6 Removed player count caching and fixed typo (ported from the efficient-server-listing branch). 2014-08-18 15:33:51 -04:00
Tux ad67e1c60c Removed efficient per-server list fetching. It had too many issues. It will be readded when it can be fixed. 2014-08-14 20:21:56 -04:00
Tux f685661462 Enhanced server listing API (now more efficient) and fixed count issues. 2014-08-10 17:58:45 -04:00
Tux 5a6d2b15bb Merge branch 'master' into data-caching 2014-08-10 06:49:33 -04:00
Tux c75be36531 Remove spirous call. 2014-08-10 06:49:20 -04:00
Tux 297d4a8a7f Use an unbounded cache via ConcurrentHashMap. 2014-08-10 06:34:05 -04:00
Tux e15b4d23f3 Added missing null check. 2014-08-10 06:27:50 -04:00
Tux 6df0a481e7 Better server caching. 2014-08-09 23:57:57 -04:00
Tux d3b2f3f10b Removed debug message. 2014-08-09 23:18:23 -04:00
Tux b37566b47f BLEEDING: New data caching mechanism for RedisBungee, which will enable greater performance as soon as it has been fleshed out. 2014-08-09 23:16:47 -04:00
Tux befd4d0d26 Store user's proxy in their hash and rename the server: keys to proxy: to make their purpose more clear. 2014-08-09 15:32:12 -04:00
Tux 62cdf7af1b Indentation. 2014-08-09 15:26:52 -04:00
Tux ee778953e8 Don't use Date, instead use Calendar. I still want to sneak in LocalDate somehow... 2014-07-30 18:03:07 -04:00
Tux 13b62f7269 Do not cache username<->UUID mappings indefinitely.
Instead, we will cache them for three days, and we will recalculate them from fresh values taken while they were online or we ask Mojang for the information.
2014-07-30 13:46:39 -04:00
mc-core.com a8a75723fb Added an api method to send messages to a custom PubSub channel. This makes the register channel feature a lot more useful. 2014-07-25 19:00:53 -04:00
Tux 7a710c1ae0 Port RedisBungee to threadGroup branch of BungeeCord 2014-07-09 22:54:12 -04:00
Tux 1769463df1 Make the command sender public again 2014-07-02 19:30:28 -04:00
md_5 f9180dfb8d Make use of Bungee scheduler for threaded operations. 2014-07-02 16:38:04 +10:00
Tux 718b020bf2 Better checking 2014-06-26 03:34:16 -04:00
Tux 688246b8fe Tweaks, more pipelining. 2014-06-17 15:47:52 -04:00
Tux 511202044c Preserve the old sample 2014-06-13 23:36:20 -04:00
Tux 460414b3e6 Use Redis pipelining for more efficiency on high-load setups. Also updated Jedis dependency. 2014-06-11 07:24:09 -04:00
Tux c6a6a9d9d0 Fix a typo. 2014-06-06 17:38:41 -04:00
Tux eca670c43d Notify if a server is behind every 30 seconds. This is a /very/ common issue. 2014-06-06 17:38:03 -04:00
Tux 16ca96562f Remove the player-list-in-ping feature.
This feature is something that would ideally be separate from RedisBungee. With the removal of this feature, this is something I will be creating and unveiling when 0.3.2 is released.
2014-06-05 00:19:25 -04:00
Tux 484d0bc46b Fix inconsistency here 2014-06-04 13:15:25 -04:00
Tux 14c2f95a94 Allow default RedisBungee commands to not be registered 2014-06-04 12:59:21 -04:00
Tux 527f76ac6b Ran inspections on code. Fixed compile errors. 2014-05-30 23:57:42 -04:00
Tux 8bf80450ca Forgot to get the writeLock() 2014-05-30 23:29:51 -04:00
Tux a908e313d4 Enhance the UUIDTranslator and add an option to increase performance. 2014-05-30 23:22:31 -04:00
Tux 92971fce96 Properly scope exceptions 2014-05-28 18:29:44 -04:00
Tux bb71dd674f Correctly mark the UUID/name methods as NonNull 2014-05-28 02:06:17 -04:00
Tux dea8073b11 Fix multiple players online on one proxy. 2014-05-25 18:16:14 -04:00
Tux dd4a33d9d4 Fix canonical-glist: false usage of /glist 2014-05-24 23:16:23 -04:00
Tux 0136699b40 Support Mojangian UUIDs 2014-05-23 10:53:38 -04:00
Tux 730b77f227 Allow UUIDs to be used in commands 2014-05-23 10:50:05 -04:00
Tux ca81f2f61b Actually send messages. Too obvious of an oversight. 2014-05-23 00:22:13 -04:00
Tux 61b83e5889 Clean up code, automatic crash detection, fix some bugs 2014-05-22 23:37:26 -04:00
Tux 638643dab7 Fix typo 2014-05-22 23:20:53 -04:00
Tux 9cf7fdb3c4 Add omitted returnBrokenResource 2014-05-22 17:49:00 -04:00
Tux 07e2621ab2 Just to be sure, initialize the API first thing. 2014-05-20 20:32:43 -04:00
Tux 1d99367956 Revert vemacs for the 3rd time.
@vemacs, do not change this, or I will not only revoke your access to the repo, I will also skin you alive. Using "API" methods in this context is just fine and just because it doesn't suit your fancy doesn't mean you can just change it. I am the BDFL, obey me.
2014-05-20 20:30:31 -04:00
vemacs 2cdc844b75 Some code consistency 2014-05-20 17:00:15 -06:00
Tux f9fbbb388a move serverId to its own field, prepare for next release (0.3.1-SNAPSHOT) 2014-05-20 16:55:50 -06:00
Tux 235b42021b Add in some more API documentation along with a slight optimization for a common use case 2014-05-16 20:41:59 -04:00
Tux ace0979201 Lowercase name -> UUID association 2014-04-26 22:28:17 -04:00
Tux e316e84c2b Fix error when no other servers were present 2014-04-26 20:09:53 -04:00
Tux 0a2b43e7dc Make UUIDResolver properly deal with usernames 2014-04-26 19:43:40 -04:00
Tux d84f42952c Optimize getPlayers() 2014-04-26 19:43:09 -04:00
Tux c5d35a2a1c Better persistence of translated data 2014-04-23 18:05:42 -04:00
Tux 4aeb762c17 Fix UUIDTranslator bug, add UUID null checking, make plugin messaging asynchronous 2014-04-20 10:50:45 -04:00
Tux c82adc61b0 Delete playerCounts hash entry beforehand 2014-04-20 10:16:42 -04:00
Tux 86d9b40a78 Fix a JDK8 build error 2014-04-20 01:13:22 -04:00
Tux 1362739b27 RedisBungee 0.3 base code. A lot has changed. There is more to come. 2014-04-20 01:12:28 -04:00
Tux d3a6170e78 Refactoring 2014-04-19 16:08:49 -04:00
Tux cce0368f4c Cache server-ids 2014-04-19 15:54:30 -04:00
Tux 72eb4c6a67 Add primitive heartbeat system 2014-04-19 15:52:15 -04:00
Tux 03bb9eb679 Remove it as well 2014-04-03 23:32:10 -04:00
Tux c6ca9d1c78 Actually add server to server set. 2014-04-03 23:27:58 -04:00
Tux 98b2c4733a Fix compile error 2014-04-03 23:24:27 -04:00
Tux df5f5ef2c9 Lay linked-servers into the morgue. 2014-04-03 23:03:27 -04:00
Tux db0ea751e9 Do not poison the pubsub handler, in order to prevent shutdown hangs. 2014-03-31 23:02:26 -04:00
Tux d65a316427 Revert unintentional change to UUID-based storage. This will be handled soon. 2014-03-31 11:21:48 -04:00
Tux 611ee89fb4 Add new PubSub handling along with associated API methods. 2014-03-31 11:19:33 -04:00
Tux 6924673c16 Improve concurrency of PubSub handler 2014-03-31 10:23:10 -04:00
Tux 8b1ea2f7df Major changes.
* Some events are now handled asynchronously.
 * There is now support for a connection limit.
 * Fixed build under JDK8.
 * Player count is now cached again. Hopefully this means an increase in performance.
2014-03-30 00:31:35 -04:00
Tux 4edfabfe98 Detect "imposter" Bungees (two Bungees with the same server-id). 2014-03-02 14:28:18 -05:00
Tux 49ea863da2 It seems this fixes timeout issues 2014-02-21 18:49:26 -05:00
Tux 27b8b09bf3 Deal with connection failures more gracefully. 2014-02-21 17:02:02 -05:00
Tux 9425358631 Fix up Javadoc 2014-02-12 01:26:56 -05:00
Tux cb7963dbc5 Modify POM, support new BungeeCord builds. 2014-02-11 17:42:52 -05:00
Tux 2f40480a50 javadocs 2014-01-28 17:33:53 -05:00
Tux 5a28cd9ede More robust error checking. 2014-01-25 19:06:33 -05:00
Tux b604434091 Add aliases. Meant to be temporary until I can find a good workaround the cmd-list module in newer Bungee builds. 2014-01-24 15:40:45 -05:00
Tux 522a046192 Fix build and use getProxy() 2014-01-22 15:32:49 -05:00