49 Commits

Author SHA1 Message Date
ljacqu
9fd532d798 Minor: Rename StringUtils#isEmpty to #isBlank
- Better fits the naming used by other tools and also the JDK (String#isBlank as of JDK 11)
2022-12-30 08:44:29 +01:00
ljacqu
6db778387d Don't make CommandDescription final as to allow mocks
- Construction of a CommandDescription requires a lot of fields to be set. In most tests we only care about one or two fields -> having to set a lot of fields to dummy values is not very nice.
2017-03-05 11:08:43 +01:00
ljacqu
8aa573b9ed Minor fixes as found by Checkstyle 2017-03-05 10:58:29 +01:00
ljacqu
666e242212 Delete CollectionUtils (unused) 2017-01-21 14:47:18 +01:00
ljacqu
1d11824367 #293 Translatable help - show translated description of child commands
- Show translated command descriptions when available
- Fix bug where localized command is registered on the parent each time

Thanks to @Maxetto
2016-10-18 19:47:57 +02:00
ljacqu
2a4bb483a3 #727 finalization - minor javadoc changes 2016-06-04 21:57:31 +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
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
a0da423a7b Minor - Javadoc changes
- Add/replace/improve javadoc in the commands and encryption section
- Note: A simple <p> is the javadoc way to make a new paragraph
http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#format
- Note: Do not escape '<' and '>' inside of {@code }
- Note: '>' does not need to be escaped
2015-12-31 13:32:41 +01:00
ljacqu
efa458cae1 Finalization for #305 - command refactor 2015-12-19 20:25:12 +01:00
ljacqu
cbf0996197 Logic for FoundCommandResult.Status / Add tests for CommandHandler
- Fix other tests
- Add logic for smaller pending FIXME's
2015-12-17 22:23:43 +01:00
ljacqu
01cba2a508 #315 #305 Refactor HelpProvider - add bit flags, reduce duplication (wip) 2015-12-12 22:50:07 +01:00
ljacqu
d26cbfbd14 Use Guava for CommandDescription builder validation 2015-12-12 22:28:05 +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
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
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
ljacqu
22ad305506 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into commands-refactor 2015-12-06 00:52:34 +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
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
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
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
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
3b9b1b7b8a Refactored name of command builder, to specify it a little better 2015-12-01 16:14:59 +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
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
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
644f7e8541 Merge origin/enum into local branch 2015-11-25 22:18:21 +01:00
Tim Visée
47b1d00ccf Fixed various spelling and grammar issues 2015-11-23 22:07:32 +01:00
Tim Visée
36c50c4507 Reformatted code with new code style 2015-11-23 21:46:34 +01:00
Tim Visée
2e868c7492 Reformatted all code files, cleaned up the project 2015-11-23 21:33:08 +01:00
AuthMe-Team
9ec2d6d059 Stuff from the common floobits workspace
Author:    AuthMe-Team <AuthMeTeam@123NoEmail.com>
2015-11-23 20:23:52 +01:00
ljacqu
cd728b569e Create test for CommandManager; fix javadoc in CommandDescription 2015-11-21 22:32:16 +01:00
ljacqu
a3f24bcb9a Create test for HelpSyntaxHelperTest 2015-11-21 17:18:58 +01:00
ljacqu
115680a363 Create test for HelpSyntaxHelperTest
(cherry picked from commit 9a6e96d)
2015-11-21 12:07:21 +01:00
Gabriele C
bd1f868c6d standard javadoc 2015-11-21 01:31:18 +01:00
Gabriele C
118c79401a Prepare the project for javadocs 2015-11-21 01:27:06 +01:00
Xephi
4fd8d6e0cd Don't use SuppressWarnings please :3 2015-11-02 10:25:53 +01:00
Gabriele C
175da3f6fc Cleanup! 2015-11-01 23:35:10 +01:00
Tim Visée
8b4d8a489c Fixed and improved CommandDescriptor class 2015-11-01 16:16:48 +01:00
Tim Visée
eeec8ca228 Moved new command handler system to new package 2015-11-01 15:34:13 +01:00