Adding new business logic to a task command
Suppose there is an existing WebSphere Commerce task command, called
ExistingTaskCmd
. Following the WebSphere Commerce naming conventions, this task
command would have an interface class named ExistingTaskCmd
and an implementation
class named ExistingTaskCmdImpl
. Now assume that a business requirement arises and
you must add new business logic to this existing command. One portion of the logic must be executed
before the existing command logic and another portion must be executed after the existing command
logic.
About this task
The first step in adding the new business logic is to create a new implementation class that
extends the original implementation class. In this example, you would create a new
ModifiedTaskCmdImpl
class that extends the ExistingTaskCmdImpl
class. The new implementation class should implement the original interface
(ExistingTaskCmd
).
Within the new command, you override the existing performExecute
method and
include the new logic before and after calling the super.performExecute
method.
The following code snippet demonstrates how to add new business logic to an existing task command:
public class ModifiedTaskCmdImpl extends ExistingTaskCmdImpl
implements ExistingTaskCmd {
/* Insert new business logic that must be
executed before the original command.
*/
// Execute the original command logic.
super.performExecute();
/* Insert new business logic that must be
executed after the original command.
*/
}
You must also update the CMDREG table to associate the new implementation class with the existing interface. The following SQL statement shows an example update:
update CMDREG
set CLASSNAME='ModifiedTaskCmdImpl'
where INTERFACENAME='ExistingTaskCmd'