Commit Graph

404 Commits

Author SHA1 Message Date
Luck
175a21c0e4
API 4.0 - this is a breaking change 2017-11-07 22:05:49 +00:00
Luck
2440a38e82
add RedisBungee context calculator for the BungeeCord platform 2017-11-02 19:01:53 +00:00
Luck
b7541c43c8
Add Sender#getNameWithLocation 2017-11-02 18:51:59 +00:00
Luck
72e6c75433
Cleanup / tidy up a number of classes 2017-10-29 12:58:49 +00:00
Luck
e8896fbdf7
Fix NPE on startup (#520) 2017-10-24 13:05:06 +01:00
Luck
54695b8046
Form more descriptive console & import usernames 2017-10-23 23:37:55 +01:00
Luck
c573c755d2
Add option to cancel failed logins on BungeeCord variant 2017-10-23 16:59:07 +01:00
Luck
a3a7198777
More storage refactoring 2017-10-22 20:09:53 +01:00
Luck
ca8cc91f37
Add group setdisplayname command (#493) 2017-10-22 16:58:53 +01:00
Luck
5ac0f93214
Fix migrating null / non-existent usernames - reverts parts of 6bfeec6, fixes #514 2017-10-22 09:07:08 +01:00
Luck
ecfbed00b1
Add config option to allow invalid usernames (#516) 2017-10-22 09:00:10 +01:00
Luck
fa4bb0447a
Rewrite flatfile storage (YAML & JSON) to use configurate, add HOCON storage method 2017-10-21 23:20:45 +01:00
Luck
aa0be40124
Cleanup verbose handler & only send sponge OP command notification if the sender has permission 2017-10-16 18:55:17 +01:00
Luck
6bfeec6d16
Fix updating primary groups for players who've never joined the server with SQL storage types (#500) 2017-10-16 14:43:58 +01:00
Luck
0f4c057395
Add highest_inherited and lowest_inherited meta stack elements 2017-10-15 15:13:23 +01:00
Luck
b26fc69e73
Remove usage of the now-redundant ExtractedContexts class, other misc cleanup 2017-10-15 14:23:51 +01:00
Luck
597f2f7b1b
Make parents-by-weight the default primary group calculation method 2017-10-14 22:54:54 +01:00
Luck
8920396360
Remove context pre-processing (mostly)
This approach isn't very effective when contexts are frequently changing, and it is hard to guess in advance which contexts are going to be in-use.

The Sponge version has proven that this whole system isn't really necessary.

Contexts for 'allow all' and 'global' are still pre-processed, however this should be significantly less work for the server. (even if it is being done async)
2017-10-12 20:17:52 +01:00
Luck
9c505e4402
Move Track methods away from checked exceptions, refactor ContextManager & primary group holders 2017-10-12 19:43:42 +01:00
Luck
9e6788de2f
Refactor context manager 2017-10-03 19:02:14 +01:00
Luck
f98aafb97c
Fix world content on BungeeCord not being lowercase'd 2017-09-24 23:43:39 +01:00
Luck
de8fb8de90
Only load slf4j if it's not already present on the server 2017-09-23 21:15:45 +01:00
Luck
777c972bdc
Cache SubjectReference instances, general cleanup 2017-09-21 21:59:27 +01:00
Luck
67602b8d85
Fix startup deadlock 2017-09-13 21:24:35 +01:00
Luck
f3251e9407
Fix missing depend 2017-09-10 21:45:47 +01:00
Luck
096885d91f
Add tracing to /lp verbose, API updates/cleanup, add login process event, and utilise string interning for faster context/node comparisons 2017-09-10 21:25:00 +01:00
Luck
754c7d8e3b
Add config option to prevent primary group removal (#405) 2017-09-04 17:03:17 +01:00
Luck
d60d0ac9c5
Reduce buffer times, refactor MessagingService init 2017-09-04 16:49:43 +01:00
Luck
509826949d
Add login debug option 2017-08-27 13:54:26 +01:00
Luck
39aaa8a292
Update for latest Text version 2017-08-22 22:51:49 +01:00
Luck
ae8be97db7
Dispatch log entries via the messaging service 2017-08-20 13:32:52 +02:00
Luck
909844aef5
Update KyoriPowered/text dependency 2017-08-16 10:56:35 +02:00
Luck
82466c2e5d
Properly implement Contexts#allowAll - bump API to 3.3 2017-08-13 22:21:04 +02:00
Luck
1d5e3205ac
Refactoring & misc cleanup 2017-08-12 19:34:14 +02:00
Luck
e42cc101cc
Cleanup & document a number of Bukkit impl classes 2017-07-24 14:32:10 +01:00
Luck
90afd3c3ed
Cleanup handling of empty permissions when migrating data (closes #387) 2017-07-22 20:04:55 +01:00
Luck
3c44388883
Update /lp info output 2017-07-19 22:15:12 +01:00
Luck
400f3a9156
Add option to disable colored logging (#382) 2017-07-18 17:58:40 +01:00
Luck
d23b29aeb1
Update dependency versions 2017-07-07 14:48:42 +01:00
Luck
42d48c8da2
Implement argument based permissions for LP commands - closes #52, #170, #174 2017-07-07 12:43:13 +01:00
Luck
9e83a5e4d9
Add RedisBungee messaging service option for BungeeCord 2017-07-03 16:24:00 +01:00
Luck
d2bf940105
Add option to use the servers uuid cache/lookup facility (#354) 2017-07-03 16:07:33 +01:00
Luck
5cd5186092
Don't cancel re-allowed connections unless the cancel was made by LP 2017-06-26 21:39:59 +01:00
Luck
cf5318b92b
Make command defintion/usage messages translatable 2017-06-20 20:20:41 +01:00
Luck
8766e3b408
Add jar signing to build scripts 2017-06-19 20:09:18 +01:00
Luck
c4c7f06d83
Fix BungeePerms migration - closes #333 2017-06-19 16:43:00 +01:00
Luck
0acefde805
Tidy up configuration file layouts 2017-06-12 21:41:23 +01:00
Luck
a9e751b4b8
Replace fanciful with KyoriPowered/text 2017-06-11 14:46:56 +01:00
Luck
b9fc8f4b5f
Add MongoDB collection prefix option 2017-06-05 16:09:02 +01:00
Luck
139dd5302b
Cleanup login handling & reduce the amount of unnecessary logging output on startup 2017-05-18 22:30:01 +01:00
Luck
abc1c164cf
Expose MetaStacks in the API, general cleanup, release 3.2 2017-05-16 21:41:20 +01:00
Luck
5121fc6b1f
Cleanup 2017-05-14 22:15:25 +01:00
Luck
e835b31277
Apply world rewrites on-top of the real world name, and apply recursively (#255) 2017-05-09 13:07:39 +01:00
Luck
6817945e12
Bump sponge API version, cleanup 2017-05-09 12:55:45 +01:00
Luck
cedc5108fc
Refactor Patterns to PatternCache 2017-05-07 13:56:42 +01:00
Luck
8326539d40
Refactor LP PermissionService to implement a modified API & add proxied classes 2017-05-03 20:14:31 +01:00
Luck
163e6e0f2a
Always load user data caches alongside user instances 2017-05-02 16:55:08 +01:00
Luck
a526c942ca
Add config options to allow for finer control over how permissions are calculated, and set include-global to true on BungeeCord by default 2017-04-23 20:30:58 +01:00
Luck
f43b9c96de
cleanup login handling & add CountdownLatch to ensure the plugin has started before logins are handled 2017-04-21 19:10:25 +01:00
Luck
67b5c72520
Cleanup handling of unknown/null usernames for users 2017-04-17 19:31:52 +01:00
Luck
a3737d4f35
fix typo 2017-04-16 11:08:54 +01:00
Luck
3314e94a9a
Add not_on_track meta stack criteria 2017-04-16 11:06:05 +01:00
Luck
a27436b086
Fix getting primary groups for offline users 2017-04-15 20:32:03 +01:00
Luck
1f54bc41cc
Cleanup poms, update copyright header 2017-04-15 19:01:52 +01:00
Luck
4fb07ff181
API changes for 3.1 2017-04-10 22:26:20 +01:00
Luck
82e759d708
Make sure world names are lowercase'd 2017-04-08 17:00:36 +01:00
Luck
9de44d2605
Don't attempt to migrate empty permissions 2017-04-07 21:03:27 +01:00
Luck
029dc9f8d9
Make the standard MySQL driver the default again 2017-04-06 11:30:17 +01:00
Luck
0ec19a8fee
Implement accumulation of static contexts from a file 2017-04-03 01:42:49 +01:00
Luck
2749563f5d
Replace guava caches with caffeine 2017-04-03 00:53:04 +01:00
Luck
e7e2e3f7e0
Allow context pairs to be specified in commands, fix misuse of exceptions in the permission holder class 2017-04-02 18:44:05 +01:00
Luck
8e557d122b
Fix some concurrency issues with login handling 2017-03-26 18:40:09 +01:00
Luck
c36b0d2975
Automatically push updates to other servers via the messaging service when commands are ran 2017-03-21 21:58:45 +00:00
Luck
f8ad562b95
Rename "debug" classes to "verbose" 2017-03-20 17:22:18 +00:00
Luck
2e75bc3f3b
Add some alternate options for primary group calculation 2017-03-17 22:54:18 +00:00
Luck
ac4bd418f3
Rename online-mode config option to use-server-uuids to better reflect/clarify its purpose 2017-03-17 20:51:06 +00:00
Luck
aa2941fcdb
Refactor and cleanup commands 2017-03-13 20:03:03 +00:00
Luck
dbc909a317
Cleanup migration commands 2017-03-13 19:10:36 +00:00
Luck
11465a4ce9
Fix BungeePerms migration to account for group weights and negated permissions 2017-03-12 20:00:02 +00:00
Luck
d18ac2e6eb
Cleanup pom files, maybe improve build speed a bit 2017-03-12 14:28:35 +00:00
Luck
b9fc5c39ae
Listen for changes in data files and automatically update 2017-03-11 23:05:03 +00:00
Luck
bce7fa871d
Fix getAllNodes cache not working properly, remove pre-process contexts on Bungee & cleanup some unused methods 2017-03-11 17:55:50 +00:00
Luck
2462eac497
Run exporter in own thread and process user exports concurrently 2017-03-10 20:44:19 +00:00
Luck
ec8273aa9f
Change bungeecord leave event priority to wait longer before unloading data 2017-02-26 21:53:03 +00:00
Luck
e8c0c43e9d
misc cleanup 2017-02-24 19:31:45 +00:00
Luck
6798fb21b2
Events rewrite, remove most deprecated API methods (v3.0) 2017-02-19 14:57:20 +00:00
Luck
05f906a759
Add /lp tree command - closes #175 2017-02-15 19:21:27 +00:00
Luck
140e6b08ca
Apply regex perms before wildcards 2017-02-11 12:12:28 +00:00
Michael Vorburger
0982154a15 "Explaination" --> "Explanation" (#168) 2017-02-04 22:32:34 +00:00
Luck
6540c695de
Add configurable duration handling when a holder already has a temporary permission/parent/option set - closes #152 2017-02-03 22:24:42 +00:00
Luck
ede413a213
Fix import/export handling - closes #159 2017-02-02 15:13:44 +00:00
Luck
9cee319ed9
Cleanup all migration commands - closes #63 2017-02-01 18:41:15 +00:00
Luck
8dbb083b90
Fix migration log being sent to the console twice 2017-01-31 12:29:06 +00:00
Luck
0be6d658ed
Refactor plugin and scheduler interfaces 2017-01-31 12:14:42 +00:00
Luck
424af27a47
Change update messages to account for more than just redis messaging 2017-01-29 11:09:11 +00:00
Luck
f27034bb35
Pull git commit id once only - should improve build time 2017-01-26 13:55:06 +00:00
Luck
0c1a2e82bf
implement verbose expression matching 2017-01-23 22:43:52 +00:00
Luck
d93cc826b2
Fix backwards compatibility with redis 2017-01-22 22:49:11 +00:00
Luck
327c8b83be
Implement BungeeCord & LilyPad messaging services - closes #142 2017-01-22 21:46:22 +00:00
Luck
292d4cd450
Implement stacking prefixes - closes #60 2017-01-22 18:23:08 +00:00
Luck
b7cf0e6bc7
Refactor config handling - towards #100 2017-01-21 15:36:13 +00:00
Luck
2e16844141
Remove console only commands - closes #137 2017-01-19 20:39:09 +00:00
Luck
241507228f
Colorize console info messages 2017-01-19 19:51:41 +00:00
Luck
8aa7d272fa
Include license file in the jars 2017-01-19 19:03:59 +00:00
Luck
01ac5382ea
Prevent some shutdown exceptions - closes #136 2017-01-19 18:56:22 +00:00
Luck
aea44fc8bc
API changes for 2.17 - closes #123 2017-01-16 20:01:41 +00:00
Luck
2b96b656a9
constants do not need getters 2017-01-12 21:14:27 +00:00
Luck
1c229d54d9
Cleanup 2017-01-11 18:55:46 +00:00
Luck
055d181c67
Fix KCauldron dependency loading - closes #121 2017-01-09 18:20:03 +00:00
Luck
960c2291b6
Fully implement new SQL schema & add migration code 2017-01-08 19:33:27 +00:00
Luck
a54046907d
change first login event handling 2016-12-30 12:46:24 +00:00
Luck
2dad9f84fc
Fixes towards #77 2016-12-27 14:55:21 +00:00
bakatrouble
f8a77cf809 Change comments on configs; default ports for all storage backends 2016-12-27 12:39:54 +00:00
Luck
d3e60487bb
Download dependencies at runtime instead of shading them in the jar 2016-12-22 21:17:02 +00:00
Luck
8a692200d5
Improve memory footprint in low throughput caches 2016-12-20 12:42:20 +00:00
Luck
70aa3964ee
Run all commands on the same thread - fixes #79 2016-12-11 11:34:18 +00:00
Luck
d1426f1b37
change jar names 2016-12-08 19:33:49 +00:00
Luck
1e13ee87af
cleanup imports 2016-12-07 22:21:22 +00:00
Luck
25511f898c
implement clickable message base - towards #68 2016-12-07 21:08:40 +00:00
Luck
257f426ab9
implement cached state for all permission holders. towards #69 2016-12-06 21:33:55 +00:00
Luck
8f9a1aa931
Add verbose pastebin upload functionality - resolves #55 2016-12-03 19:30:25 +00:00
Luck
307e2b889c
Changes for version 2.16 2016-12-02 20:20:31 +00:00
Luck
793a84edfb
Sponge: replace MemorySubjectData with own implementation 2016-11-26 17:19:04 +00:00
Luck
18dd59ed0f
Refactor Sponge subject handling 2016-11-25 20:59:28 +00:00
Luck
443906da55
Refactor managers 2016-11-25 18:28:10 +00:00
Luck
cf456cff81
Implement tab completion for permissions 2016-11-24 19:07:01 +00:00
Luck
f1606ac51b
API changes for 2.15 2016-11-22 18:27:40 +00:00
Luck
d13eb1a55d
Fix default assignments never being applied on Bungee 2016-11-21 18:26:37 +00:00
Luck
51732fa660
Rearrange some packages, general cleanup 2016-11-20 13:44:36 +00:00
Luck
9a2cf82623
Improve user info command 2016-11-19 17:52:39 +00:00
Luck
18a3dfd604
cleanup 2016-11-13 19:30:46 +00:00
Luck
563dd4683d
Changes for & release of API 2.14 2016-11-12 14:10:42 +00:00
Luck
e8cd2c7548
More command refactors 2016-11-10 22:13:53 +00:00
Luck
1c534d7475
More cleanup 2016-11-08 20:46:29 +00:00
Luck
90f8dbe243
Refactor commands 2016-11-07 22:02:48 +00:00
Luck
d320679f69
Implement proper meta inheritance handling 2016-11-07 17:32:17 +00:00
Luck
5ebbc178a5
Remove messenger system & more cleanup 2016-11-06 14:56:13 +00:00
Luck
4f6e229943
Small cleanup 2016-11-05 23:23:08 +00:00
Luck
5361b1e87b
Implement group weights 2016-11-05 09:04:26 +00:00
Luck
a99609e016
Don't wrap buffer tasks in scheduler calls 2016-10-29 21:23:30 +01:00
Luck
c0ea2d8ec3
Fix data not being loaded sync when the plugin starts 2016-10-29 21:14:59 +01:00
Luck
66f756575a
Remove redundant config option 2016-10-27 18:48:38 +01:00
Luck
7acc8bc7ed
Add verbose command 2016-10-27 17:46:44 +01:00
Luck
0a4d337a53
Cache context lookups & refactor Sponge subjects 2016-10-27 16:32:14 +01:00
Luck
0198068a13
Improve permission lookup speed (slightly) 2016-10-26 21:35:44 +01:00
Luck
bd830617c9
Small cleanup 2016-10-25 11:14:56 +01:00
Luck
2cfc82f3aa
Implement support for instant data propagation with Redis 2016-10-24 14:38:12 +01:00
Luck
bb9eab0989
Lower sync wait buffer & fix export command 2016-10-24 13:02:26 +01:00
Luck
4d85930f5a
Refactor migration classes 2016-10-23 20:42:25 +01:00
Luck
383276f47a
Refactor contexts, expose cached data in the API & release 2.13 2016-10-23 16:46:53 +01:00
Luck
33c78e4a17
Use LoadingCache instead of a regular map + more datastore fixes 2016-10-22 20:39:26 +01:00
Luck
77e70ef8d3
Fix deadlocks caused by waiting for async operations to complete before the scheduler has started 2016-10-22 09:21:30 +01:00
Luck
5d955e77b6
Make the max pool size configurable 2016-10-21 22:22:06 +01:00
Luck
be7d914e39
Finish the buffering refactor - still WIP. Towards #32 2016-10-21 18:34:53 +01:00
Luck
37fc00cce8
Refactoring storage - WIP. Towards #32 2016-10-20 21:55:34 +01:00
Luck
7b655d12df
Add set-primary-group option to the default assignments 2016-10-17 18:23:41 +01:00
Luck
13fbc7dd39
Implement default assignment system (#25) 2016-10-16 13:58:57 +01:00
Luck
e4810302e1
Implement meta / Sponge option commands & fix meta caching system. Fully resolves #23 2016-10-14 22:49:32 +01:00
Luck
6109718c67
Cleanup some remaining TODOs 2016-10-13 21:16:34 +01:00
Luck
cd758d7e48
Bump minor version 2016-10-13 20:40:09 +01:00
Luck
26fb506560
Reorganize packages 2016-10-13 20:07:10 +01:00
Luck
83d9229295
Refactor caching system (WIP) - still working towards #23 2016-10-12 21:57:57 +01:00
Luck
9fe05efb4e
Don't force the default group 2016-10-11 18:54:42 +01:00
Luck
2429831153
API changes for 2.11 2016-10-05 21:40:54 +01:00
Luck
008dc3fc52
Move some classes around 2016-10-03 20:42:11 +01:00
Luck
4787361e66
Implement locks to hopefully resolve race conditions with I/O - experimental 2016-10-01 19:03:05 +01:00
Luck
ab6b011225
Fix permission lookups being case sensitive 2016-09-26 18:52:01 +01:00
Luck
3424b0542a
Release 2.10 2016-09-25 17:32:58 +01:00
Luck
c53623dd67
Make command usage output easier to read 2016-09-25 14:34:27 +01:00
Luck
5ee6db02ff
Proper context implementation - WIP 2016-09-25 10:19:36 +01:00
Luck
eb9d2be587
Add locale file support 2016-09-23 22:14:40 +01:00
Luck
df1e747861
Add commands to view inherited groups 2016-09-23 19:23:31 +01:00
Luck
f48595b1ff
Add world and group name rewriting, refactor configs 2016-09-23 18:58:19 +01:00
Luck
12cd4e19cb
Update config comments 2016-09-22 18:25:49 +01:00
Luck
fa9324bda8
Implement basic standalone base, working towards #9 2016-09-20 21:50:28 +01:00
Luck
b1e34b55f8
Re-add regex permissions & actually take note of the config options 2016-09-19 21:00:23 +01:00
Luck
cff1b8a411
Separate PermissionProcessor into own class 2016-09-19 20:45:37 +01:00
Luck
66818e4c82
Fix build 2016-09-17 23:46:11 +01:00
Luck
23d53d39b4
Refactor permission calculation 2016-09-17 23:15:07 +01:00
Luck
30ea5a5b69
Fix no permissions applying when include-global is false, and better support per-server/per-world groups 2016-09-17 19:05:56 +01:00
Luck
e7a210dc06
Update default configs 2016-09-16 22:09:55 +01:00
Luck
be74b50762
Fixes for offline mode servers 2016-09-16 21:24:25 +01:00
Luck
f2e06b56e7
Cache permission lookups 2016-09-16 21:11:12 +01:00
Luck
ce3ee866ca
Sponge fixes 2016-09-14 19:37:20 +01:00
Luck
e7ca79d251
Use Splitter instead of Patterns, don't split arguments in quotes 2016-09-12 19:00:37 +01:00
Luck
31884ea59d
Maybe fix race condition with messages not sending 2016-09-10 14:31:42 +01:00
Luck
f28721e55a
Possible fix for permissions not applying on BungeeCord 2016-09-09 18:32:50 +01:00
Luck
ea07f05097
Release 2.8 2016-09-07 20:53:33 +01:00
Luck
60bcd5f643
Release 2.7 2016-09-05 20:00:01 +01:00
Luck
770b7dc282
Fix permissions not being removed on Sponge 2016-09-04 17:59:01 +01:00
Luck
23df8a2df8
Some small fixes 2016-09-04 16:24:36 +01:00
Luck
36cd388607
Slight re-wording 2016-09-03 21:34:35 +01:00
Luck
4d48ef1939
Add comment about Paper's "bungee-online-mode" option. Resolves #6 2016-09-03 21:30:37 +01:00
Luck
7970e2a1c6
Add bPermissions migration 2016-09-03 18:15:52 +01:00
Luck
5dec5a54cb
Add YAML storage support 2016-09-02 19:15:31 +01:00
Luck
3fd62a80e2
Add support for split storage 2016-08-31 09:30:19 +01:00
Luck
9b4bbe0500
Make log notifications toggleable 2016-08-30 16:02:01 +01:00
Luck
6aea3b53f3
Only save unique users 2016-08-28 21:36:16 +01:00
Luck
b2cf6dce2d
Prepare for 1.6 release 2016-08-28 15:29:02 +01:00
Luck
edaf174ebf
Complete refactor of permissions/nodes. progress towards 1.6 2016-08-27 00:32:39 +01:00