Commit Graph

234 Commits

Author SHA1 Message Date
Luck
5b97d01363
Permission holder refactoring 2019-08-26 14:02:39 +01:00
Luck
3474c66c1c
Big API refactor
- removed a bunch of ugly / badly designed methods and APIs
- refactored 'Contexts' --> 'QueryOptions'
- Removed the FullySatisfiedContexts hack and replaced it with a sane API
- Made PermissionHolder (in the API) less ugly and horrible
- removed lots of deprecated / duplicated API functionality
and much more...
2019-08-26 14:02:44 +01:00
Luck
8f8c916be3
API: remove storage interface 2019-08-04 11:27:31 +01:00
Luck
a823290d66
API: remove uuid cache 2019-08-04 11:27:27 +01:00
Luck
7f4f9bb917
Fix build 2019-05-20 23:09:02 +01:00
Luck
8d8024ba5e
Fix group changes via the API not properly invalidating caches (#1534) 2019-05-20 10:42:48 +01:00
Luck
8eed4558f4
Release API v4.4 2019-04-02 16:36:22 +01:00
Luck
c7a0d7026c
Update API build script 2019-04-01 14:00:46 +01:00
Luck
287cc308d6
Fix parsing log entry types (#1438) 2019-02-19 14:17:33 +00:00
Luck
beeb4fa169
Fix DuplicateRemovalFunction javadocs 2019-02-19 14:09:26 +00:00
Luck
85d2f0b51f
Add method to unregister context calculators (#1422) 2019-02-07 12:24:23 +00:00
Luck
6fc2321fad
Refactor PlayerLoginProcessEvent
This is technically a breaking change, but I'm fairly sure I'm the only person using this event. It's quite obscure ;p
2019-01-02 13:54:55 +00:00
Luck
2ccffc6e6d
Fix error message when event handlers throw an exception 2018-12-22 17:03:51 +00:00
Luck
4b1cf51530
replace LoadingCache with more simple LoadingMap alternative when no auto expiry is needed 2018-12-14 18:37:56 +00:00
Luck
de24817d9c
Some node equality changes 2018-12-14 17:27:34 +00:00
Luck
085e7af681
Small cleanup in Contexts class 2018-12-10 15:33:57 +00:00
Luck
1aabd7610e
Tweak PlayerSaveResult javadoc 2018-12-10 15:33:38 +00:00
Luck
757e9d6be6
Add API method to get known permissions & improve the way PermissionDescriptions are migrated from existing Sponge services when LP enables 2018-12-07 14:07:54 +00:00
Luck
e222e4e98c
Missing nullability annotations 2018-12-07 13:33:05 +00:00
Luck
b7ff0824b9
Optimize context set manipulation 2018-12-06 14:02:41 +00:00
Luck
1544487e92
Convert permissions to lowercase inside the cache
Slight optimization, toLowerCase is a relatively expensive call in the scheme of permission checks.
2018-11-24 13:09:26 +00:00
Luck
c19ef84116
Optimize ImmutableContextSet#equals by comparing the hashcodes (constant time lookup) 2018-11-24 01:25:02 +00:00
Luck
fe77834cef
Optimize LookupSetting storage/manipulation within Contexts
Fixes some performance issues resulting from bad use / implementation of ImmutableEnumSets
2018-11-23 23:58:49 +00:00
Luck
2da6298c53
Update references to the project website 2018-11-22 15:25:39 +00:00
Luck
acb56d683a
Add missing since tag to MetaStackFactory 2018-11-06 15:42:59 +00:00
Luck
5dda522a62
Add option to deduplicate prefix/suffix stacks (#1285) 2018-11-06 14:29:15 +00:00
Luck
dcc4656e5e
Update buildscripts for Sponge Ore deployment 2018-10-15 22:30:36 +01:00
Luck
aa4139f0b7
Release v4.3.0 2018-09-23 15:04:15 +01:00
Luck
e2f1c1e16b
Remove specific dependency on Sponge API 8 in the mod info file (#1221) 2018-09-23 15:02:02 +01:00
Luck
1e7ef15e54
Fix class cast exception in NodeTypeKey#getTypeName (#1230) 2018-09-23 14:38:27 +01:00
Luck
1cc156d6f6
Fix buildscript deployment config for Sonatype 2018-09-23 14:30:09 +01:00
Luck
75f0f40d70
NonNull annotations should be on the same line in interfaces 2018-09-19 21:12:54 +01:00
Luck
3941c77826
Move from findbugs jsr305 to checker-qual 2018-09-19 20:40:25 +01:00
Luck
eca6b09b18
Refactor config keys 2018-09-05 20:49:37 +01:00
Luck
9e769904bf
Expose TemporaryMergeBehaviour in the API (#1189) 2018-09-05 11:11:45 +01:00
Luck
55220e9d10
Add support for Velocity 2018-08-26 22:24:46 +01:00
Luck
56df15caf8
Add bukkit-legacy build back to the main project 2018-08-11 18:11:30 +01:00
Luck
03720665b3
Move to gradle 2018-08-10 20:39:29 +01:00
Luck
b8466beee5
Completely rework event system
* Event instances are now generated dynamically at runtime. The performance hit of creating proxies at runtime is negligible in this case.

* A better EventBus implementation is now being used internally, API contracts are unaffected.
2018-08-09 22:39:33 +01:00
Luck
b1ab465991
Misc cleanup 2018-07-29 17:12:05 -07:00
Luck
952e41ad3d
A few API javadoc improvements 2018-07-27 23:45:16 -07:00
Luck
2036127612
Cleanup action log formatting and pagination
This is technically a breaking change to the API, but I'm fairly certain hardly anyone is using these methods (the pagination functionality in the API is pretty useless)

Can always add them back if it becomes an issue
2018-06-18 16:08:18 +01:00
Luck
c66622bd09
Fix regex permissions not really working properly (#1021) 2018-05-29 14:45:21 +01:00
Luck
a0be1c7c48
Fix issue with Bukkit attachment permissions never being removed (#991) 2018-05-13 14:06:23 +01:00
Luck
1639879106
Reduce the number of config lookups required when calculating contexts 2018-05-12 01:51:38 +01:00
Luck
51f215b8ac
Add PlayerDataSaveEvent 2018-05-06 18:21:14 +01:00
Luck
64838708ab
Release version 4.2.0
blaze it
2018-05-06 17:16:36 +01:00
Luck
c4c98aaabf
Improve the behaviour of the APIs (now somewhat redundant) holder refresh method 2018-05-04 23:17:06 +01:00
Luck
2dbbea4993
Remove the locks in NodeMap to ease thread contention when lots of processes are resolving inheritance & refactor the way LocalizedNodes are created (#734) 2018-05-04 16:16:12 +01:00
Luck
f556c75d94
Allow display names to be set in specific contexts (#963) 2018-05-02 21:27:21 +01:00
Luck
4547b52748
Refactor extended node types, general cleanup 2018-05-02 20:18:57 +01:00
Luck
3784d904fb
Some small fixes and changes for ContextSet implementations 2018-04-27 18:50:36 +01:00
Luck
fef6ebf793
Context set values should be lowercase'd too 2018-04-26 19:51:05 +01:00
Luck
97121bc719
Add some missing null check annotations 2018-04-25 21:02:17 +01:00
Luck
1312aac349
Add promote and demote methods to the API (#938) 2018-04-25 19:58:56 +01:00
Luck
f5c6b9e3d4
Add 'permission clear' command (#893) 2018-04-04 18:46:01 +01:00
Luck
7684ac5d3a
Add extra parameter to EventBus#subscribe which allows a handler to be bound to a plugin 2018-04-02 17:26:02 +01:00
Luck
5db3820df4
A few minor API javadoc changes 2018-03-12 18:58:11 +00:00
Luck
8f82ef7eb4
Add copyFrom method to Node.Builder 2018-03-01 09:19:26 +00:00
Luck
98fb9946e4
Refactor Contexts class 2018-02-28 19:13:21 +00:00
Luck
a42d27f056
Don't intern strings in ContextSets (#797) 2018-02-26 17:27:28 +00:00
Luck
168e712324
Update API to 4.1 2018-02-23 22:13:41 +00:00
Luck
966bf8bf51
Replace deprecated method usage in NodeTools 2018-02-23 14:20:30 +00:00
Luck
736105cc12
Add node equality predicates, and provide way to determine hasPermission behaviour using them (#782) 2018-02-22 23:34:35 +00:00
Luck
31e436868d
Nukkit support (#764) 2018-02-18 15:10:35 +00:00
Luck
31df29194b
Add source to UserPromote & UserDemote events (#722) 2018-02-01 21:33:32 +00:00
Luck
fe200ca1ec
Add API methods to load users/groups/tracks and return a future encapsulating the resultant object instead of a success flag 2018-01-30 15:55:36 +00:00
Luck
e28d15456c
Update some dependencies 2018-01-25 23:31:31 +00:00
Luck
72d4e5cf7a
Remove the 'use-server-uuids' option and internal UuidCache system
The feature has stuck around since the early days - and solves a problem which really should never occur.
2018-01-21 20:18:13 +00:00
Luck
821dc4ef56
Expose a means to implement the plugin's MessagingService via the API 2018-01-19 23:35:41 +00:00
Luck
ed223f0e4e
Don't allow empty context keys/values (#688) 2018-01-15 20:06:20 +00:00
Luck
ea94bd8696
move bukkit-legacy module to a separate project, cleanup poms 2018-01-08 20:01:02 +00:00
Luck
f646c04d09
Remove lombok from the project 2018-01-07 18:40:23 +00:00
Luck
3413adf16f
Send a different type of update ping for user changes, and only apply the change if the user is loaded 2017-12-28 13:37:55 +00:00
Luck
3d6aa69ca1
Improve various javadocs, add LogNotifyEvent 2017-12-27 17:00:54 +00:00
Luck
6602b23f09
misc cleanup 2017-12-23 23:51:42 +00:00
Luck
fb92fd9357
Extract out common constants & magic values into factory classes 2017-12-18 22:19:25 +00:00
Luck
a415a2705f
Return the loaded objects from storage methods as opposed to success flags 2017-12-18 17:03:59 +00:00
Luck
f86bdb7619
Misc cleanup 2017-12-17 12:17:46 +00:00
Luck
0bec93ab1c
refactor context sets 2017-12-11 19:02:02 +00:00
Luck
a5e41e479a
Use static empty context set where appropriate, cache reversed comparator instances 2017-12-07 19:49:04 +00:00
Luck
e2b9e37867
Change poms to conform to Sonatype's OSSRH requirements 2017-11-28 22:22:52 +00:00
Luck
6ca9eb13dd
General tidy up 2017-11-18 23:20:48 +00:00
Luck
22fba0c172
Fix broken usage of LogEntry#getActed 2017-11-09 21:05:06 +00:00
Luck
14005563a3
Move #refreshCachedData up the type hierarchy into PermissionHolder 2017-11-08 22:59:22 +00:00
Luck
a115ff8ce2
Final bits of API refactoring, add group data caches, fix issue with LPPermissionAttachment fake map injection 2017-11-08 22:55:05 +00:00
Luck
d75b29f51d
Move a couple more methods around in the API 2017-11-08 15:48:55 +00:00
Luck
175a21c0e4
API 4.0 - this is a breaking change 2017-11-07 22:05:49 +00:00
Luck
54695b8046
Form more descriptive console & import usernames 2017-10-23 23:37:55 +01:00
Luck
b26fc69e73
Remove usage of the now-redundant ExtractedContexts class, other misc cleanup 2017-10-15 14:23:51 +01:00
Luck
5732e60510
Remove cleanupUsers functionality
It was pretty useless (and wasn't implemented on SQL/Mongo storage types.) Data is naturally cleaned up over time as users are loaded/saved.
2017-10-12 20:38:08 +01:00
Luck
a3d78f4d0e
Always load dependencies into the plugin classloader, and not it's parent - fixes #479 2017-09-17 19:30:43 +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
269aa39378
Fix comparator and ensure @Nonnull annotated methods never return null in LogEntry 2017-08-20 14:51:46 +02:00
Luck
ae8be97db7
Dispatch log entries via the messaging service 2017-08-20 13:32:52 +02:00
Luck
f0ad40825b
Refactor and cleanup Log classes 2017-08-20 01:35:03 +02:00
Luck
046202719a
Correctly export meta/prefix/suffix nodes to command strings 2017-08-14 18:58:12 +02:00
Luck
82466c2e5d
Properly implement Contexts#allowAll - bump API to 3.3 2017-08-13 22:21:04 +02:00
Luck
d23b29aeb1
Update dependency versions 2017-07-07 14:48:42 +01:00
Luck
7d4aca68cc
Fix jsr being shaded & tweak javadoc generation to link to guava docs correctly 2017-07-02 22:04:37 +01:00