Commandes de tâche d'élément de règle de tarification
Chaque condition et action comporte une commande de tâche associée dénommée commande de tâche d'élément de règle de tarification. Cette commande de tâche effectue les travaux associés à l'élément de règle de tarification. La définition du modèle d'élément de règle de tarification doit spécifier la commande de tâche à utiliser.
Les commandes de tâche remplissent plusieurs fonctions comme décrit dans le tableau suivant :
| Fonction de la commande de tâche | Méthode appelée dans la commande de tâche | S'applique aux conditions ? | S'applique aux actions ? |
|---|---|---|---|
| Valider les paramètres de l'élément de règle de tarification lorsque la règle de tarification est sauvegardée. | validateParameters |
Oui, le cas échéant. | Oui, le cas échéant. |
| Effectuer le travail de l'élément dans la règle de tarification | performExecute |
Oui, obligatoire. | Oui, obligatoire. |
Format de commande de tâche
Une commande de tâche d'un élément de règle de tarification doit être une classe qui implémente l'interface com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmd.Pour comprendre le format d'une commande de tâche, examinez les exemples de code suivants. Les exemples sont destinés à un exemple de condition personnalisée. La condition a pour objectif de déterminer si le client s'est enregistré à une date spécifique, avant cette date ou après, afin de savoir s'il peut bénéficier de prix spéciaux.
Voici un exemple de classe d'interface de commande de tâche qui étend l'interface PriceRuleElementCmd :
package com.mycompany.commerce.price.rule.commands.element;
import com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmd;
public interface RegistrationTimeConditionElementCmd extends PriceRuleElementCmd {
public final static String defaultCommandClassName =
RegistrationTimeConditionElementCmdImpl.class.getName();
}Voici un exemple d'implémentation de commande de tâche qui étend la classe com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmdImpl. Les fragments accompagnés d'un chiffre sur leur gauche sont expliqués plus en détail à la suite de l'exemple :
|
|
| 1 | |
| 2 | |
| 2a | |
| 2b | |
| 2c | |
| 2d | |
| 2e | |
- 1 Ce fragment définit la méthode
validateParameterspour valider les paramètres de la condition et renvoie les erreurs éventuelles. - 2 Ce fragment définit la méthode
performExecute, laquelle procède à une évaluation de la condition et renvoie true ou false :- 2a Ce fragment extrait les paramètres de contexte métier du client.
- 2b Ce fragment extrait le jour d'enregistrement réel du client.
- 2c Ce fragment appelle la méthode
getElementParameterspour extraire les paramètres utilisés par la commande de tâche pour effectuer l'évaluation. Les paramètres sont définis en tant qu'arguments dans la commande de tâche de l'élément de règle de tarification. - 2d Ce fragment détermine si la condition doit renvoyer true ou false. Par exemple, si la condition est "Les clients qui se sont enregistrés en février", la condition doit renvoyer true s'il s'avère que le client s'est enregistré en février.
- 2e Ce fragment indique aux services de tarification si la condition a renvoyé true ou false.
A propos des méthodes utilisées dans la commande de tâche de l'élément de règle de tarification
Ce tableau fournit des détails supplémentaires sur les méthodes standard utilisées dans les commandes de tâches de l'élément de règle de tarification pour les conditions et les actions. Pour une liste complète et une description des méthodes disponibles pour les commandes de tâche, reportez-vous à la classe com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmdImpl.
| Elément de règle de tarification | Méthodes standard utilisées |
|---|---|
| Condition |
|
| Action |
|