com.ibm.websphere.management.cmdframework.provider
Class SimpleCommandProvider
- java.lang.Object
-
- com.ibm.websphere.management.cmdframework.provider.CommandProvider
-
- com.ibm.websphere.management.cmdframework.provider.SimpleCommandProvider
-
public abstract class SimpleCommandProvider extends CommandProvider
The class provides a mechanism for command providers to implement multiple admin commands easily.This command provider always creates SimpleAdminCommand instance for any commands. The
execute
method always delegates the execution logic to a method with the same name of the command defined on this class. For instance, if the command name is "mySimpleCmd", then the SimpleAdminCommand delegates the execution logic of the command to a methodObject mySimpleCmd(AdminCommand cmd);
This method may return any object type and throw some exceptions. Therefore, command providers only needs to implement a method on this class for each admin command it provides.The limitation of this approach is that command provider can not override the
validate
andgetChoices
methods.
-
-
Field Summary
Fields Modifier and Type Field and Description protected java.util.HashMap
methodTable
-
Constructor Summary
Constructors Modifier Constructor and Description protected
SimpleCommandProvider()
-
Method Summary
Methods Modifier and Type Method and Description AbstractAdminCommand
createCommand(com.ibm.websphere.management.cmdframework.commandmetadata.CommandMetadata metadata)
Create an instance of an admin command based on the specified metadata.protected void
execute(SimpleAdminCommand cmd)
Delegates the execution logic to the method with the same name as the command name.protected void
executeReal(SimpleAdminCommand cmd)
AbstractAdminCommand
loadCommand(com.ibm.websphere.management.cmdframework.commanddata.CommandData cmdData)
Create an instance of an admin command based on the specified command data.-
Methods inherited from class com.ibm.websphere.management.cmdframework.provider.CommandProvider
commandStepPosition, createCommandStep, getCommandProviderHelper, getStepMetadata, initCommandMetadata, loadCommandStep
-
-
-
-
Method Detail
-
createCommand
public AbstractAdminCommand createCommand(com.ibm.websphere.management.cmdframework.commandmetadata.CommandMetadata metadata) throws CommandNotFoundException
Description copied from class:CommandProvider
Create an instance of an admin command based on the specified metadata. This method also works for task command.- Overrides:
createCommand
in classCommandProvider
- Parameters:
metadata
- the metadata of an admin command.- Returns:
- an admin command instance.
- Throws:
CommandNotFoundException
- if the specified command is not found.
-
loadCommand
public AbstractAdminCommand loadCommand(com.ibm.websphere.management.cmdframework.commanddata.CommandData cmdData) throws CommandNotFoundException, CommandLoadException
Description copied from class:CommandProvider
Create an instance of an admin command based on the specified command data.- Overrides:
loadCommand
in classCommandProvider
- Parameters:
cmdData
- the command data of the admin command.- Returns:
- an instance of admin command that contains specified command data.
- Throws:
CommandNotFoundException
- if the specified command is not found.CommandLoadException
- if the command data is failed to load into an admin command instance.
-
execute
protected void execute(SimpleAdminCommand cmd)
Delegates the execution logic to the method with the same name as the command name.- Parameters:
cmd
- the command object.
-
executeReal
protected void executeReal(SimpleAdminCommand cmd)
-
-