Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Better documentation (list of commands with description, and for each command a list of parameters).
  • Remove command pooling.
  • Get rid of the Commons Chain library (see Greg's comment).
  • Allow commands to be injected.
  • Allow configuration-by-code for commands.

...

The command definition will be kept at its current location (/modules/adminInterface/commands), and will be defined by the Legacy module.

TODO: define helper class/interface The CommandsManager class will be extended with a method executeCommand(String catalog, String command, parameters) methodMap<String,Object> parameters) , that will allow to run commands without need to handle Context etc.

 

Proposals for future goals (not to be implemented in this sprint):

Getting rid of the Commons Chain library:

New interface Command (a 'copy' of the one from the Commons Chain library) will be defined in the info.magnolia.commands package. (Option: simply remove 'implements Command' from the MgnlCommand class definition.)

This will also require to remove the dependency to org.apache.commons.chain.Context interface from the interface info.magnolia.context.Context, and cross-check for this dependency throughout the code.

...