Commit Graph

1822 Commits

Author SHA1 Message Date
ljacqu
1377b10c24 Simplify instantiation of permission handlers
- Change permission handler to retrieve the services it needs, instead of getting them from the PermissionsManager
- Reduce visibility of some methods
- Add Reloadable interface
2016-06-19 18:20:12 +02:00
ljacqu
ff2f8a63bb Fix bugs in purge classes, cleanup
- OfflinePlayer objects were never mapped to names
- Essentials purge was run even if setting was disabled
- Console user saw messages twice
- Misc: trivial field reorderings, change DefaultPermission to be null safe
- Permissions: do not expose PermissionHandler just to get its type
2016-06-19 17:56:50 +02:00
ljacqu
a0abe3d19d Minor householding
- Remove getter for NewSetting
- Reduce visibility of classes used by DelayedRunner
2016-06-19 16:13:00 +02:00
ljacqu
d35005167e Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 674-purge-process-refactor 2016-06-19 16:02:08 +02:00
ljacqu
e38c1ea447 Merge branch '777-Fast-Join-Handler' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-06-19 15:51:40 +02:00
Gabriele C
d848a2ad16 Fix #645 #783 2016-06-19 15:14:12 +02:00
games647
03fa0e1fec Fix disabling tablist adapter on old versions (Fixes #775) 2016-06-19 12:40:15 +02:00
Gabriele C
e1d697d386 Fix #780 2016-06-19 11:07:17 +02:00
Gabriele C
12533a90f6 Join/PreLogin event listener changes 2016-06-19 10:40:20 +02:00
ljacqu
a1c62e7c04 Create delayed injection test runner
- Test runner supporting new "DelayedInjection" annotation: such fields are only initialized with instantiation right before the first time they're used in tests, allowing to set up mock behavior beforehand
2016-06-18 13:19:07 +02:00
ljacqu
cd1acfde1b #674 Create tests for purge commands and purge service 2016-06-18 11:13:17 +02:00
DNx5
680427950f derp 2016-06-18 15:41:05 +07:00
Gnat008
16e9990723 implement checking permissions of an offline player 2016-06-17 20:49:03 -04:00
ljacqu
3629c51fc1 #674 PurgeService: Always register if purging, reduce code duplication
- Rename autoPurging to isPurging: we should always register if a purge task is in progress (regardless if autopurge or not) and deny any new requests
- Reduce the same logic being coded multiple times by calling through the methods
- DataSource: remove purgeBanned in favor of purgeRecords, both do exactly the same thing
2016-06-16 22:52:11 +02:00
ljacqu
94451647f3 #674 #656 Delete DataManager
- Replaced with PurgeService
2016-06-16 22:06:49 +02:00
ljacqu
2ac89f5938 Apply minor changes to PurgeService
- Remove various imports / unused fields
- Make CacheDataSource call source for purging on DB
- Minor: SQLite - place creation of PreparedStatement outside of loop
- Make specific purge actions called from task package-private (clearer from the outside which methods can be called from the outside)
2016-06-16 21:04:12 +02:00
Gnat008
fb8baeafd2 remove database auto purge methods 2016-06-16 12:52:42 -04:00
Gnat008
fde634e054 Merge branch 'master' into 674-purge-process-refactor 2016-06-16 12:36:31 -04:00
Gnat008
5156a24b40 remove unused PurgeTask constructor 2016-06-16 12:35:49 -04:00
Gnat008
af1520802d major refactor of the purging process 2016-06-16 12:28:42 -04:00
Maxetto
a298773cd3 Periodic Italian Update
Still keeping it updated 😉
2016-06-16 15:52:17 +02:00
ljacqu
2c4d1b54cf Remove solved todo message 2016-06-16 08:03:48 +02:00
Gnat008
3a102c324e move bypass permission location 2016-06-15 15:15:39 -04:00
ljacqu
ac484345a2 Change password task to async process
- Perform async change password task just like other async processes: via Management
- Remove legacy setting
- Remove now unused service getter (#736)
2016-06-15 20:56:34 +02:00
ljacqu
15886fb517 #723 Let LimboPlayer task manager decide which message key to use
- Pass boolean (is registered) value and determine internally which message key (email registration vs. regular) to use in the message task
2016-06-15 20:37:00 +02:00
Gnat008
68c3aabce4 Merge branch 'master' into 674-purge-process-refactor 2016-06-15 13:07:21 -04:00
EbonJaguar
5870a4a433 Add ability to check permissions by player name 2016-06-14 22:47:35 -04:00
ljacqu
5cbb83e153 Code householding, add tests to TempbanManager
- Delegate event firing to BukkitService
- Write tests for IP banning function
- Update comments on tempban properties in config.yml
2016-06-14 21:52:43 +02:00
ljacqu
3411450ff1 #760 Fix single session feature
- Move the check from PlayerLoginEvent to AsyncPlayerPreLoginEvent. Single session can only be implemented with PreLoginEvent; it is already to late to check this in the PlayerLoginEvent. Ergo, we cannot offer this for CraftBukkit.
- Remove interactions with LimboCache - no interactions with LimboCache expected until after OnJoinVerification checks. (Thanks sgdc3!)
2016-06-14 21:03:32 +02:00
EbonJaguar
367f785610 count login failures by ip address and not by name 2016-06-13 15:58:03 -04:00
ljacqu
043ee90254 #423 Make seeownaccounts / seeotheraccounts messages translatable 2016-06-13 21:45:21 +02:00
EbonJaguar
b7015f56c2 kick player on tempban, change setting comments to better reflect the process 2016-06-13 14:55:25 -04:00
ljacqu
221ce13176 #423 Display first name gray also 2016-06-13 20:46:17 +02:00
ljacqu
d5ce172e14 #729 Make FirstSpawn event synchronous 2016-06-13 19:19:37 +02:00
Gabriele C
58278a2bbe Update messages_de.yml
#763
2016-06-13 17:26:06 +02:00
Gabriele C
e12ae2cf96 Use spaces, finish working on #423, import cleanup 2016-06-13 16:13:03 +02:00
Gabriele C
26531e93ef Cleanup 2016-06-13 15:29:40 +02:00
Gabriele C
05b259892a Update messages_vn.yml
#666 Thaks to kythuat
2016-06-13 00:58:01 +02:00
ljacqu
450c80f63c #720 Update Hungarian messages
kindly submitted by @rErEaT
2016-06-12 22:10:30 +02:00
ljacqu
89bbfc48ee #723 Create provider for TimeoutTask and MessageTask, remove LimboCache#getInstance
- Create class to handle the creation of "LimboPlayer tasks" (adds encapsulation, reduces duplication)
- Move group setting into its own class because (mutual dependency between LimboCache and PermissionsManager otherwise)
2016-06-12 22:00:05 +02:00
Gnat008
67c72dc46d fix TempbanManager injecting 2016-06-12 15:17:37 -04:00
Gnat008
c3d391aeaf lets only inject in one place (moved injects to constructor) 2016-06-12 14:53:18 -04:00
Gnat008
ac4add9f54 add ability to tempban users after x wrong logins - ref #520 #192 2016-06-12 13:40:34 -04:00
ljacqu
d6e1fd5ceb Use injection in and for LimboCache, migrate some legacy settings, remove setGroup from Utils
- New injector method allows to retrieve services if they've already been instantiated -> useful for onDisable() which might be run after aborted initialization
- Deprecate various methods that need to be removed
2016-06-12 16:14:34 +02:00
Gabriele C
347d7bcf46 Update messages_de.yml
Thanks to @Platinteufel
2016-06-12 14:29:16 +02:00
ljacqu
5ef62784b5 #729 Use world from LimboPlayer for "spawn after login" feat., simplify teleport event constructors 2016-06-12 14:10:38 +02:00
ljacqu
3cdec91255 Do not teleport unregistered player if registration is optional 2016-06-12 12:48:32 +02:00
ljacqu
68d5145cd7 #729 Refactor spawn handling into separate service (work in progress) 2016-06-12 12:46:03 +02:00
Gnat008
f0e42b61c5 #747 - display captcha immediately after the failed login attempt 2016-06-11 21:23:53 -04:00
Gnat008
0cc5dd2cd5 Remove code causing issues 2016-06-11 20:54:50 -04:00
Gnat008
26cb7464e1 Re-add a scheduled task 2016-06-11 20:49:15 -04:00
Gabriele C
1de086c090 Fix 755 2016-06-11 18:05:11 +02:00
Gabriele C
01f297919d 1.10 API + cleanup 2016-06-11 17:46:24 +02:00
ljacqu
2e269b6f5e Add missing unit tests for commands 2016-06-05 13:21:05 +02:00
ljacqu
4fe26f08d4 #612 Check if plugin is permission system within method itself
- Iterate over all values within the method
- Bug fix: change method to use pluginName field, and not name
2016-06-04 22:40:30 +02:00
ljacqu
2a4bb483a3 #727 finalization - minor javadoc changes 2016-06-04 21:57:31 +02:00
ljacqu
91111ca476 #727 Remove CommandService being passed as parameter to other methods
- No longer need to pass as param to other methods since CommandService is now an injected field
2016-06-04 21:16:58 +02:00
ljacqu
26ac466035 #727 Instantiate ExecutableCommand objects in CommandHandler
- Change CommandDescription to contain a reference to ExecutableCommand class only
- Instantiate the actual ExecutableCommand objects in CommandHandler
2016-06-04 21:13:38 +02:00
ljacqu
c6778b566d #727 Remove CommandService from ExecutableCommand interface
(work in progress)
- Inject CommandService like other classes instead of passing it as method parameter
- Not solved: cyclic dependency CommandInitializer > ExecutableCommand > CommandService > CommandInitializer...
2016-06-04 11:02:15 +02:00
ljacqu
40ce01f65e #601 Increase captcha count on login start
- Increase login count at start of the login process (as done previously) and not only when login has failed AND player is still online
- Add missing javadoc to CaptchaManager
2016-06-04 10:44:34 +02:00
ljacqu
12703d1613 #601 Integrate plugin manager
- Encapsulate captcha functionality into a class instead of two public fields on the AuthMe main class(!)
   - Let CaptchaManager worry about whether it is enabled or not -> no need to check on the outside
- Implement full reloading support to enable/disable captchas + parameters
- Add unit tests
2016-06-03 22:47:17 +02:00
ljacqu
e8717ba076 Update verification notes in messages files + add entry for #743 invalid chars in password 2016-06-03 12:52:47 +02:00
ljacqu
55f7e8097a #743 Add proper error message for "invalid chars in password"
- Change password validation to return a ValidationResult object for passing message arguments
- Remove wrapping methods in ProcessService and CommandService and use ValidationService directly
2016-06-03 12:51:49 +02:00
Gabriele C
6549ebbf5e Should fix #731 2016-06-03 01:18:54 +02:00
Gabriele C
ca2e75651c Fix #734
It should run before the password check
2016-06-03 00:53:24 +02:00
Gabriele C
6c0dec887a try to fix javadoc 2016-06-03 00:27:06 +02:00
Gabriele C
eafb3b6653 cleanup 2016-06-03 00:07:25 +02:00
ljacqu
6d2597a980 #739 Fix command unit tests; adjust default handling
(cherry picked from commit 61c119b)
2016-06-02 23:12:01 +02:00
Gnat008
73272b5931 Remove all but one hasPermission() method in the PermissionsManager
#739 (cherry picked from commit 65f3347)
2016-06-02 23:11:47 +02:00
EbonJaguar
c3d07cb9a4 #739 Cleanup on PermissionsManager
(cherry picked from commit d9ad12b)
2016-06-02 23:10:37 +02:00
ljacqu
9b5009eb8c #742 Create test that plugin.yml corresponds to command definitions
- Create test
- Fix definitions to correspond
2016-06-02 15:49:21 +02:00
ljacqu
e75cff5fb8 Remove static injections in ListenerService
- Get other classes via Inject annotation
- Remove no longer needed Utils methods (relates to #736)
- Create tests for ListenerService and AuthMeBlockListener
- Performance improvement: keep unrestricted names as Set instead of List for faster contains() method
2016-06-02 12:46:54 +02:00
DNx
2581b95afb Fix NPE on server stop #740
-  not the best, because we will miss that 3 log inside authme.log.
2016-06-02 11:07:37 +07:00
DNx
e06c5e7309 Fix NPE from ConsoleLogger
if plugin could not load configuration.
2016-06-02 05:23:16 +07:00
ljacqu
7fd1ac0856 Merge branch '314-permissions-manager-refactor' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-06-01 23:39:14 +02:00
ljacqu
38db2ef0bd Minor code householding
- Add removed property to migration service
- Log exception with appropriate logger method
2016-06-01 23:24:48 +02:00
ljacqu
95343e366b #314 Evaluate default permission on enum, remove default from handler interface
- Evaluate permission for DefaultPermission on the enum itself
- Remove boolean default from PermissionHandler for hasPermission()
- Remove some unused / intermediary hasPermission() flavors in PermissionsManager
2016-06-01 21:56:57 +02:00
EbonJaguar
fdb9227ec1 Properly unhook the current system when unhook() is called 2016-06-01 14:09:30 -04:00
EbonJaguar
e99d9414b8 Add and implement handlers for each individual permissions plugin, instead of doing everything in the PermissionsManager - see #314 2016-06-01 14:00:27 -04:00
games647
1cbd11a753 Fix the issue reference for removing the exception stacktrace logging 2016-06-01 18:30:46 +02:00
games647
71a9abdad9 Remove redundant isLoggable check. It's always level ALL
Looks like the java logger does not reflect the log4j level settings

:(
2016-06-01 18:28:22 +02:00
games647
351fe3aa5a Add thread name and stacktrace to the debug logging (Related to #419)
It's only visible to user who enabled debug logging in their spigot
configuration.
2016-06-01 18:04:43 +02:00
ljacqu
e59bbbf10e #738 Add check that shooter is of type Player in ProjectileLaunchEvent
- Use reflection the opposite way: if it is an old version (getShooter() returns LivingEntity), use reflection; otherwise, call the method directly
- Add missing instanceof Player check
2016-06-01 14:06:36 +02:00
Gabriele C
58a6b6060f Log an error if the plugin is unable to create the log file. 2016-06-01 11:40:50 +02:00
Gabriele C
e6f2eb487d Merge pull request #136 from AuthMe-Team/writelog
better method to write the messages
2016-06-01 11:37:37 +02:00
DNx5
3d1f735c1b Use FileWriter to write the messages. 2016-06-01 06:12:22 +07:00
DNx5
5c690d722a - do the check for old GeoLite data correctly. 2016-06-01 05:23:40 +07:00
ljacqu
0977558924 #736 Remove use of service getters and deprecate them 2016-05-31 11:14:03 +02:00
Gabriele C
be4b3a8605 Update messages_hu.yml 2016-05-31 10:29:35 +02:00
ljacqu
3b6677ce99 Merge branch '604-default-permissions-on-nodes' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-05-31 09:15:36 +02:00
ljacqu
30b72bec4c #604 Fix HelpProvider tests 2016-05-30 23:49:59 +02:00
EbonJaguar
3ad00a45f9 Move default permissions out of Commands and into PermissionNode - fixes #606 2016-05-30 16:47:48 -04:00
ljacqu
4db5062935 Merge branch 'playerjoin-listener-cleanup' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-05-30 21:13:36 +02:00
ljacqu
18ff5d5331 Remove todo comment associated to #602 2016-05-30 20:02:07 +02:00
ljacqu
f5b4071abf Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into playerjoin-listener-cleanup 2016-05-30 17:53:42 +02:00
Gabriele C
8a0655e333 Merge pull request #134 from Gnat008/602-create-lowercase-string-list-propertytype
Add a lowercase String list property - fixes #602
2016-05-30 17:53:14 +02:00
ljacqu
cc67624a46 Throwing snowball still possible when unlogged 2016-05-30 17:09:10 +02:00
EbonJaguar
f94f4643cf Add a lowercase String list property - fixes #602 2016-05-30 11:08:01 -04:00
ljacqu
9b1ee86b2f Trivial code householding
- Replace `if (!x) ... else ...` with `if(x) ... else ...`
- Avoid throwing RuntimeException; use children
2016-05-30 12:18:55 +02:00
ljacqu
4c51b33b22 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into playerjoin-listener-cleanup 2016-05-30 07:52:40 +02:00
ljacqu
9349993faf Merge pull request #133 from Gnat008/612-add-PermissionsSystemType-method
Add isPermissionsSystem method to PermissionsSystemType enum - fixes …
2016-05-30 07:51:14 +02:00
EbonJaguar
428b27943b Add isPermissionsSystem method to PermissionsSystemType enum - fixes #612 2016-05-29 18:29:19 -04:00
Gabriele C
30aace06d4 Remove unknown config entry 2016-05-29 21:47:54 +02:00
Gabriele C
bf91e7754e Remove unused imports 2016-05-29 21:43:28 +02:00
DNx5
10e5ae08e2 remove write log for info message.
In case we don't have better log writing method yet.
2016-05-29 23:15:00 +07:00
Gabriele C
be6ed07802 Fix #568 2016-05-29 17:36:36 +02:00
Gabriele C
f5b7246d1d remove useless stuff from the player listener 2016-05-29 17:10:33 +02:00
Gabriele C
52c0c7dd64 playerlistener cleanup 2016-05-29 16:34:03 +02:00
ljacqu
64aacb12db Unit test verifications done on joining
- Write unit tests for checks done when a player joins
- Move join event handler methods back to PlayerListener; move join check logic to new separate class
2016-05-29 15:00:16 +02:00
ljacqu
39d8a88142 Structure checks done in PlayerJoinListener as individual methods 2016-05-29 11:45:12 +02:00
ljacqu
2c92a8b52f Move logic for join events in its own listener 2016-05-28 22:32:45 +02:00
ljacqu
a854d4e0e0 Register entity listener again 2016-05-28 22:29:49 +02:00
ljacqu
25f5fdb45c Code householding (PlayerListener / Settings)
- Use field on PlayerListener for storing nickname pattern -> repeatedly parsing pattern is expensive
- Remove unused legacy setting fields
- ForceFlatToSqlite cannot be run from converter command -> remove Converter interface to create more natural method signatures
2016-05-28 22:04:55 +02:00
ljacqu
b48e080324 Minor code householding
- Fix Javadoc errors reported during Jenkins build
- Use Guava methods in NewSetting where possible
2016-05-28 07:56:26 +02:00
ljacqu
107441746e Merge remote-tracking branch 'origin/master' 2016-05-27 23:05:40 +02:00
ljacqu
87331d116c Revise converter architecture + add integration test for CrazyLogin converter 2016-05-27 23:00:44 +02:00
games647
466fb8cab9 Run explicit non-thread-safe setGameMode sync 2016-05-26 10:52:49 +02:00
Gabriele C
41bad6189e Update messages_tr.yml
#621
2016-05-25 19:52:21 +02:00
ljacqu
3643b88798 #712 Add changes to fr messages by Jeje2201 2016-05-25 17:37:15 +02:00
ljacqu
6341d00df0 Code householding - remove legacy settings and TODO messages
- Remove fields in legacy settings that are now unused
- Remove various irrelevant todo messages
- Reduce visibility on some elements
2016-05-24 18:59:01 +02:00
ljacqu
e54cd526de Add verification remarks in message files
- Result from automatic task which checks message files for missing messages or tags
2016-05-24 18:37:58 +02:00
ljacqu
8de1897412 Minor - Use explicit dependencies in ProcessService
- Replace AuthMe in favor of PermissionsManager
- Create missing tests for ProcessService
2016-05-24 18:25:38 +02:00
Gabriele C
a7d3e60abe Remove unused imports 2016-05-24 17:00:23 +02:00
Gabriele C
2a3ed384d5 Fix #720 invalid HU lang file 2016-05-24 16:51:03 +02:00
Gabriele C
55cc882002 Remove scheduler methods from the ProcessService
@ljacqu it's ok now? ;)
2016-05-24 16:07:03 +02:00
Gabriele C
5007ca45f0 Update HU language #720
Thanks to @rErEaT
2016-05-24 15:55:09 +02:00
Gabriele C
dbae4953cc Can't cancel sync player chat #722 2016-05-24 15:50:28 +02:00
Gabriele C
740b44ca36 cleanup 2016-05-23 23:49:56 +02:00
Gabriele C
da6431b4fc Suppress injection test warnings 2016-05-23 23:16:40 +02:00
ljacqu
30f62547d8 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 707-process-as-service 2016-05-23 21:41:41 +02:00
Gabriele C
7865d7dc2c Remove synchronized methods from the Cache (please check)
@Xephi @ljacqu @games647
2016-05-23 21:18:31 +02:00
Gabriele C
97e96ab16b Remove unused imports 2016-05-23 21:16:11 +02:00
Gabriele C
b3f184da78 stupid conflict 2016-05-23 21:12:12 +02:00
Gabriele C
22f54c1f3e Fix Chat Hider #719 2016-05-23 21:05:18 +02:00
Xephi
c0e8650c6f Move to antibot class 2016-05-23 10:10:01 +02:00
Xephi
37b6a2f96f Enable antibot automatically and check for bot into AsyncPreLogin #719 2016-05-23 10:03:10 +02:00
ljacqu
11350ec43a Iterate over all chat recipients 2016-05-22 10:52:34 +02:00
Gabriele C
dd5fb49065 Whoops forgot to commit this #719 2016-05-21 18:08:26 +02:00
Gabriele C
e0ef0e40c7 Add denied chat message #719 2016-05-21 18:01:21 +02:00
Gabriele C
fb6303bf4a Cleanup 2016-05-21 15:37:54 +02:00
Gabriele C
410d07a64c Remove commented code 2016-05-21 15:08:40 +02:00
Gabriele C
b2b65710b1 Also for SQLITE #719 2016-05-21 15:00:48 +02:00
Gabriele C
7a21294581 Don't use synchronized methods #719 2016-05-21 14:58:57 +02:00
Gabriele C
7ad39e2a5d Use default Hikari pool parameters 2016-05-21 14:54:03 +02:00
Gabriele C
4d06b63e64 Try to fix spambot resource leak #719 2016-05-21 14:18:31 +02:00
ljacqu
53043ddc0d Create tool task that checks Mock fields of test classes 2016-05-21 11:54:54 +02:00
Gabriele C
6af65e6cd4 Fix wrong logic (my fault) 2016-05-20 22:02:26 +02:00
Gabriele C
6285a2137f Revert "Idk why, but it doesn't work!"
This reverts commit 0c2ee34db3.
2016-05-20 22:00:52 +02:00
Gabriele C
0c2ee34db3 Idk why, but it doesn't work! 2016-05-20 21:27:47 +02:00
ljacqu
c1885a381b Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 707-process-as-service
Conflicts:
	src/main/java/fr/xephi/authme/process/join/AsynchronousJoin.java
	src/main/java/fr/xephi/authme/process/login/AsynchronousLogin.java
2016-05-20 19:48:41 +02:00