Commit Graph

1160 Commits

Author SHA1 Message Date
DNx5
2fc55c5e7f Added player's real name check. Prevent login with other name case. 2015-12-12 20:17:03 +07:00
DNx5
973bfd2590 Added cache removal listener.
* Re-add auth object if player is still authenticated
2015-12-12 20:16:59 +07:00
DNx5
efcdca4087 Use Guava cache for caching PlayerAuth object. 2015-12-12 20:16:56 +07:00
ljacqu
d5b2058124 Change ExecutableCommand interface (wip – doesn't compile)
- Change interface to use (CommandSender, List<String> arguments)
- Use CommandArgumentDescription#name instead of "label" (to prevent confusion between command labels and arguments)
- Simplify command difference computation in CommandHandler (no longer consider argument difference)
2015-12-12 12:48:39 +01:00
ljacqu
2f3738aa9a Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into commands-refactor 2015-12-12 11:59:19 +01:00
ljacqu
169e38be59 Fix HelpPrinter printing the enum name instead of the permission node 2015-12-12 11:58:16 +01:00
ljacqu
eecad80748 Change ExecutableCommand interface (wip – doesn't compile)
- Change interface to use (CommandSender, List<String> arguments)
- Use CommandArgumentDescription#name instead of "label" (to prevent confusion between command labels and arguments)
- Simplify command difference computation in CommandHandler (no longer consider argument difference)
2015-12-12 11:39:19 +01:00
ljacqu
1e2a0f98ba Tools: pass Scanner to tasks and revert options management
- Remove TaskOption and central logic for processing options. It is not flexible and clear enough without investing a lot of effort. Fix is easy - just pass the scanner and let the task do what it needs to do.
2015-12-12 10:37:08 +01:00
ljacqu
0efb419149 Minor - add JavaDoc to tools classes 2015-12-12 10:24:04 +01:00
ljacqu
23d6801baa Run tool tasks from one entry point
- Create scanner which scans for existing tasks
- Unify options management (mostly because multiple Scanner's are a bad idea)
2015-12-12 10:09:38 +01:00
ljacqu
2f153fb85c #305 Modularize logic / separate from data classes (wip – doesn't compile)
- Remove permission logic on command side; make PermissionsManager handle checks for all CommandSender objects (not only Player), cf. #314
- Remove unnecessary redundancies in passed arguments ("command references" that can be inferred from the FoundResult)
- Extend FoundCommandResult to represent all possible error cases
2015-12-12 00:43:55 +01:00
ljacqu
ec9009d776 Separate command handler into smaller parts (wip – doesn't compile)
- Move logic from CommandMapper to CommandHandler
- Create "ResultStatus" on FoundCommandResult to precisely return the error case
Naming and structure not final
2015-12-11 23:16:13 +01:00
ljacqu
550eecebdc Add command similarity check to mapper (work in progress) 2015-12-11 22:08:36 +01:00
ljacqu
56c005587c Create basic outline of command mapper 2015-12-11 20:33:09 +01:00
DNx5
a14e3260dc Merge branch 'db-improve'
Conflicts:
	src/main/java/fr/xephi/authme/settings/Settings.java
2015-12-11 21:47:19 +07:00
DNx5
cd1c861b47 Bungee message update, whatever. 2015-12-11 12:16:29 +07:00
Gabriele C
1ecee76b60 clean imports 2015-12-10 20:53:46 +01:00
Xephi
50c18c4093 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded.git 2015-12-10 20:45:53 +01:00
Xephi
dff4e6d135 Use ByteStreams from Guava 2015-12-10 20:45:46 +01:00
ljacqu
52b61b10f6 Tools: Remove I/O without user confirmation, minor refactoring
- Permissions: Do not write to generated file without explicit consent by user (default behavior of runners should be _not_ to do any I/O)
- Fix wrong check in messages; minor output adjustment
- Remove hacky check to see if last char of a file is a new line
2015-12-10 20:24:20 +01:00
ljacqu
3253b43a63 Merge branch 'messages-verifier' of https://github.com/AuthMe-Team/AuthMeReloaded 2015-12-10 19:53:23 +01:00
ljacqu
37d769a3ce Add missing keys to messages file 2015-12-10 19:51:29 +01:00
ljacqu
f5583f4435 Manual messages fixes; refine messages verifier
- Add messages with new line to same line with &n
- Add German translation for missing key
- Adjust messages filename pattern to include Chinese files (with 4-letter codes)
- Change verifier to only output errors (more "to-the-point" output)
2015-12-10 19:42:19 +01:00
ljacqu
c50c9efe83 Refine messages file verifier
- Fix minor open issues
- Add documentation
- Rename to [hopefully] more suitable names
2015-12-10 19:31:56 +01:00
ljacqu
186ef965ca Message files verifier - refactoring
- Separate logic from output (still potential for improvement)
- Prompt user for options (single file mode / write missing keys or not)
2015-12-10 19:18:05 +01:00
Xephi
12de593ec4 Add an info in console when player login from other server 2015-12-10 18:48:22 +01:00
Xephi
75084e62ec [PREV COMMIT] If we set a custom channel, maybe listen at it :') 2015-12-10 18:36:31 +01:00
Xephi
3975e65655 [DEV] [BungeeCord] Fix reading data 2015-12-10 18:34:50 +01:00
Xephi
1ce4a11147 [PREV COMMIT] Oops, it's logout here :D 2015-12-10 18:32:41 +01:00
Xephi
d01713a2f5 [DEV] [NEED TEST] BungeeCord
Add a way to send player login on other AuthMe instance through
BungeeCord plugin channel
2015-12-10 18:31:46 +01:00
ljacqu
5b92b30a96 Revert sorting of messages
- Comments in the files were out of order and then removed manually. Sorting will therefore be done in a comment-friendly way in Java
2015-12-10 18:15:46 +01:00
ljacqu
935e9892c4 Tools - Create message files verifier (work in progress)
- Create utility to test the message files for any unknown or missing message keys
2015-12-10 18:11:31 +01:00
Gabriele C
9c86fbd8bf cleanup listener class 2015-12-10 15:44:24 +01:00
Xephi
e99161f3ac Add Shell script to sort file content 2015-12-09 16:43:27 +01:00
Xephi
30f4a00e3b One left 2015-12-09 14:54:05 +01:00
Xephi
7d7cf0909f Fix latest commit 2015-12-09 14:53:24 +01:00
Xephi
c3d724ebce Sort messages.yml file 2015-12-09 11:35:29 +01:00
Xephi
49da659d93 Add SH Helpers tools 2015-12-09 11:15:09 +01:00
Xephi
dcd06760ce Display a message on bad email.html 2015-12-09 10:38:41 +01:00
ljacqu
6a503772e2 Close Scanner in tools/permissions; make use of more generic services
- Close scanner for all cases
- Replace read from file with the one from the File service
- Rename file service class to FileUtils to better reflect its purpose
2015-12-08 22:08:22 +01:00
ljacqu
0710c4f531 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into commands-refactor 2015-12-08 21:58:35 +01:00
ljacqu
595879b95e #307 Finish changes to incomplete solution (f40d75e)
- Remove deprecated builder
- Fix introduced typos
2015-12-08 21:51:33 +01:00
Gabriele C
e4fbe4ec53 Fix npc issues (#320)
This will fix 1 bug..... and will generate new ones! :P
2015-12-08 20:52:45 +01:00
Gabriele C
6ee07160bb cleanup and update deps 2015-12-08 20:07:10 +01:00
DNx5
6f040fe8ac Added permission check for vip login. Fix #323 2015-12-07 19:59:26 +07:00
Xephi
a212a0c0fd Fix Captcha count 2015-12-06 11:08:33 +01:00
Xephi
9236c1fb12 Fix Build, my bad, sorry 2015-12-06 05:30:28 +01:00
Gabriele C
06b7ad88d5 console mode during mvn build 2015-12-06 01:44:48 +01:00
ljacqu
d059d4f00d Fix possible NPE - permissions in CommandDescriptions can be null
- Fix missed null situation during previous code changes
2015-12-06 01:13:12 +01:00
ljacqu
22ad305506 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into commands-refactor 2015-12-06 00:52:34 +01:00
ljacqu
d5a1af0380 Add bat helpers to tools 2015-12-06 00:40:11 +01:00
DNx5
7ba54123db Update PlayerAuth builder class. 2015-12-06 06:14:30 +07:00
DNx5
c196f45854 Change getAccountsRegistered method to use normal Statement.
- Log the stacktrace if something weird happens.
2015-12-06 06:12:45 +07:00
DNx5
1f001f2225 Removed max mysql connections options from config. 2015-12-06 06:10:16 +07:00
DNx5
45c6bf0a78 Removed DatabaseCalls class.
* this class only contains wrapper of selected datasource type which every method included a code to run the task inside a new Thread. But this class doesn't help improving performance, because it's still running the task synchronously.
2015-12-06 06:08:52 +07:00
ljacqu
af9078c24b Merge branch 'allow-global-perms' of https://github.com/AuthMe-Team/AuthMeReloaded 2015-12-05 23:56:54 +01:00
ljacqu
d3edbbcb49 #285 #319 Add support for wildcard permissions
- Fix accidental recursive call
2015-12-05 23:55:58 +01:00
ljacqu
63a7cd00df #285 #319 Add support for wildcard permissions
- Add wildcard attribute to permission nodes that are checked additionally in the permissions manager
2015-12-05 23:33:09 +01:00
ljacqu
f99bba4b5f #314 Encapsulate permissions package better
- Move permissions responsibilities from command to permissions (remove some logic from CommandPermissions, add DefaultPermission enum to permissions package)

- Start possible interface for the future per-permission system implementations of permissions managers
2015-12-05 23:05:42 +01:00
Xephi
1e5a29a502 Add a case checker option 2015-12-05 22:27:23 +01:00
Xephi
f40d75e4aa Finish change to CommandBuilder 2015-12-05 22:17:49 +01:00
ljacqu
f1c3eed069 Update permissions page 2015-12-05 21:19:20 +01:00
ljacqu
8cde4a1896 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into tools 2015-12-05 21:17:44 +01:00
ljacqu
40a83d4366 Revert permission nodes from "authme.command" back to simple "authme" 2015-12-05 21:17:16 +01:00
ljacqu
90a04e477a Remove ALL perm node from command initializer; JavaDoc householding 2015-12-05 21:10:09 +01:00
ljacqu
7c36f087fc Fix failing test
Detailed description of a command must end in '.'
2015-12-05 21:04:14 +01:00
ljacqu
4d082388a5 Create tag template / auto-generate page for all permissions incl. description 2015-12-05 20:53:44 +01:00
Xephi
8460725c83 Part of CommandBuilder rework 1/? 2015-12-05 19:16:16 +01:00
Xephi
1db24adb5d Add a wildcard command permission 2015-12-05 19:00:44 +01:00
ljacqu
c91fb46951 Include the JavaDoc description for permission node enums 2015-12-05 15:26:50 +01:00
ljacqu
e81bcf9bf7 Create GeneratedFileWriter and basic permission nodes list creater 2015-12-05 14:13:20 +01:00
ljacqu
a8b3fe2648 RegisterAdminCommand - fix wrong message key 2015-12-05 12:08:09 +01:00
ljacqu
61875f26fa #305 Prepare to remove CommandParts - replace getCount() to List#size()
- Preparations to remove the CommandParts as it's a "decorated list".
2015-12-05 12:06:44 +01:00
ljacqu
9d39fc1127 Undo wrong renaming of test class falsely including 'Admin' 2015-12-05 10:55:05 +01:00
ljacqu
b419c72271 Fix #316 Ordinary player can use /authme unregister
- Change wrong player permissions to admin permissions
- Rename command class names that were the same for the ordinary vs. admin task
- Create test to ensure that commands with OP_ONLY default require an admin permission node
2015-12-05 10:48:42 +01:00
ljacqu
44aa91dfff Remove unnecessary constructor in CommandDescription
- Remove one of two unnecessary constructors in CommandDescription (in favor of the builder)
- Remove TODO about unlimited arguments (not currently a priority, will create a story instead of leaving a dangling TODO for ages in the code)
2015-12-05 00:10:45 +01:00
ljacqu
8eb1b38d21 Slim down CommandParts API
- Remove all methods that aren't constructors / fancy get() on list; almost possible to remove class entirely
2015-12-04 23:47:48 +01:00
ljacqu
2faad44ffa Move most API of CommandParts to util classes
Gradual transition to removing CommandParts altogether.
 - Move logic from CommandParts to utils classes
2015-12-04 23:19:37 +01:00
ljacqu
bb93c7164a Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor 2015-12-04 22:00:44 +01:00
ljacqu
9140ebe602 Change initialized command descriptions to Set
- Set is more efficient if it's frequently used for `contains()`, which is what we use it for after initialization
2015-12-04 21:58:16 +01:00
DNx5
fda7822644 Merge please 2015-12-05 03:45:52 +07:00
ljacqu
c78e12de04 Refactorings - prepare to remove FoundCommandResult
- Reduce tight coupling by passing list of available commands as param to CommandHandler
- Split command processing method into several smaller ones
- Remove unfinished logic for unlimited command arguments (reason: was not implemented and not used, probably needs another way to handle it once the need for it arises)
- Create test for CommandHandler
2015-12-04 21:33:50 +01:00
DNx5
93484a3449 Merge remote-tracking branch 'origin/master' into authme-process
Conflicts:
	src/main/java/fr/xephi/authme/cache/limbo/LimboCache.java
	src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java
	src/main/java/fr/xephi/authme/process/register/AsyncRegister.java
	src/main/java/fr/xephi/authme/settings/Settings.java
2015-12-05 03:23:50 +07:00
ljacqu
0c1589f93a Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor 2015-12-04 19:35:57 +01:00
Xephi
e781115d7c Change from mailText to a dedicated file email.html 2015-12-04 17:57:10 +01:00
Xephi
8336dc848e Fix #301 2015-12-04 17:24:56 +01:00
Xephi
0d1cf8c7e2 Idk how it can be null, but well ... 2015-12-04 17:17:35 +01:00
Gabriele C
a1f963adf8 update hikari 2015-12-04 13:23:17 +01:00
ljacqu
152a0cabb5 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor
Conflicts:
	src/main/java/fr/xephi/authme/command/CommandInitializer.java
2015-12-03 22:16:52 +01:00
ljacqu
1fbe4e0c3b #298 Change password shows wrong 'pw cant be username' error
- Change MessageKey to the proper message
- Change permissions for admin changepassword to admin
- Rename player changepassword command arguments to reflect their actual meaning
2015-12-03 22:07:18 +01:00
ljacqu
1ca6bcffe1 Make AuthMe.management private; create test for CaptchaCommand 2015-12-02 22:13:43 +01:00
ljacqu
f698c9241b Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor
Conflicts:
	src/main/java/fr/xephi/authme/output/Log4JFilter.java
2015-12-02 21:56:53 +01:00
ljacqu
cafad5b088 Fix #296 Reloading doesn't update settings
- Replace Settings to encapsulate a YamlConfiguration instance provided by AuthMe, rather than loading the config file again.
2015-12-02 21:42:39 +01:00
Xephi
a18ea851be Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded.git 2015-12-02 16:34:43 +01:00
Xephi
41b6b4184e Remove StackTrace for production 2015-12-02 16:34:28 +01:00
Gabriele C
42416c4bdc Update config.yml 2015-12-02 16:28:00 +01:00
DNx5
ee3fe45d7f Fix unclosed Statement object. 2015-12-02 06:36:41 +07:00
DNx5
35d73b2d4a Mysql Improvements.
* Contains lot of changes
2015-12-02 06:29:43 +07:00
DNx5
a8f3a441d5 Lowercase PlayerAuth nickname in constructor and setter. 2015-12-02 04:53:12 +07:00
DNx5
69361de262 Merge remote-tracking branch 'origin/db-improve' into db-improve 2015-12-02 04:48:30 +07:00
ljacqu
923020bf07 Reduce duplication in Log filter implementations 2015-12-01 22:17:18 +01:00
DNx5
8d9e212b15 Improve register process.
* Removed double check for email settings
* Use builder for PlayerAuth
* Handle exceptions in process method
2015-12-02 04:14:18 +07:00
DNx5
3d8e63699d Merge branch 'db-improve' into authme-process 2015-12-02 04:11:21 +07:00
DNx5
e02af46d65 Lowercase the name input. 2015-12-02 04:10:56 +07:00
ljacqu
c288d3285e Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor 2015-12-01 21:59:19 +01:00
ljacqu
b0e619d412 Refine JavaDoc and move Log filters to 'output' 2015-12-01 21:53:18 +01:00
ljacqu
690a8d67a3 Abstract Messages into two layers; move to new 'output' package
- Abstract Messages into two layers: the top layer 'Messages' is how Messages can be retrieved and sent as before. In the background, package-private, MessagesManager actually does the file read and worries about I/O while Messages takes care of higher-level things (such as joining two lines or checking the current language).
2015-12-01 21:45:02 +01:00
DNx5
7ec79afe4a Set speed into 0.0 2015-12-02 03:22:27 +07:00
ljacqu
54d8ede5bc Add changes missed during merge 2015-12-01 20:44:44 +01:00
ljacqu
c4df2589b7 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor
Conflicts:
	src/main/java/fr/xephi/authme/command/CommandDescription.java
	src/main/java/fr/xephi/authme/command/CommandInitializer.java
2015-12-01 20:43:49 +01:00
Tim Visée
2550e04112 Fixed player permission tests, improved test structure consistency 2015-12-01 16:44:49 +01:00
Tim Visée
7ac39d80fd Fixed admin permission tests 2015-12-01 16:40:00 +01:00
Tim Visée
ccb9e24ce5 Fixed invalid permission reference. 2015-12-01 16:35:28 +01:00
Tim Visée
a0ed554514 Moved permission from player to admin space 2015-12-01 16:34:54 +01:00
Tim Visée
3d0bf674bd Added JavaDocs to PlayerPermission class, fixed various permission nodes 2015-12-01 16:34:22 +01:00
Tim Visée
42cebacd60 Added JavaDocs to AdminPermission class 2015-12-01 16:29:47 +01:00
Tim Visée
4afef9714d Converted two commands to use the builder 2015-12-01 16:24:24 +01:00
Tim Visée
999c08956d Changed 'changemail' permission to keep the nodes consistent 2015-12-01 16:20:21 +01:00
Tim Visée
369a7ccd65 Lowercase'd player permission node 2015-12-01 16:19:39 +01:00
Tim Visée
fdc747d007 Refactored player permissions enum, to make the name suit better 2015-12-01 16:19:05 +01:00
Tim Visée
7f54838ad4 Rebased player command permission nodes 2015-12-01 16:18:16 +01:00
Tim Visée
8bea153005 Rebased administration command permission nodes 2015-12-01 16:17:37 +01:00
Tim Visée
3b9b1b7b8a Refactored name of command builder, to specify it a little better 2015-12-01 16:14:59 +01:00
Gabriele C
00c6b17f3e Add customizable anto bot message 2015-12-01 15:42:02 +01:00
DNx5
ececba2858 Merge branch 'authme-process' into db-improve 2015-12-01 16:25:17 +07:00
DNx5
92f57090be Set default value for the Builder 2015-12-01 16:07:58 +07:00
DNx5
23e01c8b26 Create builder for PlayerAuth. 2015-12-01 12:19:13 +07:00
ljacqu
44eef346b9 Add test to verify the format of command labels
- Fix test class throwing NPE when run isolation -> attempts to get Logger from Wrapper
2015-11-30 21:18:58 +01:00
ljacqu
485b6934e6 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into command-perms-refactor 2015-11-30 21:12:47 +01:00
ljacqu
a4c45e126e Start refactoring of command handling (work in progress)
Preparation:
- Remove unused API
- Move some logic from "data classes" elsewhere
2015-11-30 21:09:52 +01:00
DNx5
2fdd5ef325 Handle country blacklist effectively 2015-12-01 02:36:44 +07:00
DNx5
37b24d4e72 Fix "new config options message" always printed on reload. 2015-12-01 02:17:07 +07:00
DNx5
8a6ab3edb5 Setup unrestricted names into lowercase. 2015-12-01 02:14:28 +07:00
DNx5
e387a801f7 Removed some unnecessary player check. 2015-12-01 02:06:51 +07:00
DNx5
d692530035 Moved is player can connect check into prelogin event. 2015-12-01 01:35:30 +07:00
DNx5
029214c080 Fix npe after register. 2015-12-01 01:29:56 +07:00
Xephi
174ad3b29c Fix Conflict 2015-11-30 19:21:15 +01:00
Xephi
3b1c8cd2e4 fix conflict 2015-11-30 19:10:50 +01:00
Alexandre Vanhecke
8b08b1a7dd Merge pull request #278 from Bodyash/master
Color Codes change in messages_ru
2015-11-30 19:06:47 +01:00
DNx
ea932712c3 Fix constants setup. 2015-11-30 10:57:02 +07:00
DNx
406c58f585 Remove build time from plugin version. 2015-11-30 10:24:33 +07:00
Gabriele C
109c85f4dd Auto build number + helpHeader config 2015-11-29 14:27:44 +01:00
ljacqu
da0c5d1ea2 Split command management into initializer and handler
- Create Initializer class that only initializes AuthMe commands
- Move remaining method to CommandHandler
- Deprecate constructors on CommandDescription in favor of the builder
- Various cleanups and comments
2015-11-29 12:51:11 +01:00
ljacqu
d7513ecc7b Fix nullpointer when command requires no permissions
- Add test to verify connections among the command initialization
2015-11-29 12:04:01 +01:00
ljacqu
7c652feac2 Fix failing command tests
- Detailed description missing period
- Fix twice defined /authme delete
- Add executable command to HelpSyntaxHelperTest initializations
- Remove unneeded constructors in CommandDescription
2015-11-29 10:56:01 +01:00
ljacqu
6a94135f64 Commands - fix child not being registered in parent via Builder
- Create test to ensure that commands don't define the same binding
- Create stricter attribute validation in builder: throw an error if required field was not initialized
2015-11-29 10:24:32 +01:00
ljacqu
a124e8f283 Refine CommandDescription builder; add/fix JavaDoc; add tests
- Add tests to check the integrity of the commands that are defined in the CommandManager
- Convert some more commands registrations to the new Builder format
2015-11-29 01:21:48 +01:00
ljacqu
faf9a2c8ac Create builder for command description; refactor command classes
- Create builder class for CommandDescription
- Remove redundant methods in command registration classes (e.g. certain validation is superfluous because we only instantiate the classes internally)
- Replace multiple occurrences where a field is directly instantiated e.g. with a list and then its value is overwritten by a constructor = redundant instantiation of objects
2015-11-28 23:59:04 +01:00
ljacqu
364583e7db Change use of String permissions to the permission enums 2015-11-28 21:59:29 +01:00
ljacqu
e519906dc5 Create enum classes for permission nodes 2015-11-28 21:26:07 +01:00