Création de la commande de tâche d'un élément de règle de tarification
Créez une interface de commande de tâche et sa classe d'implémentation associée pour votre nouvel élément de règle de tarification. Cette commande de tâche effectue le travail de l'élément de règle de tarification et valide les paramètres.
Avant de commencer
- Commandes de tâche d'élément de règle de tarification
- Classe com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmdImpl
- Interface com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmd
Pourquoi et quand exécuter cette tâche
La commande de tâche de l'élément de règle de tarification doit être une classe qui implémente l'interface PriceRuleElementCmd et doit étendre la classe PriceRuleElementCmdImpl.
Procédure
- Ouvrez HCL Commerce Developer et basculez vers la vue Explorateur d'entreprise.
- Créez un module pour les fichiers de votre commande de tâche :
- Dans le nouveau module, créez une classe d'interface pour votre commande de tâche d'élément de règle de tarification étendant l'interface PriceRuleElementCmd.
Assurez-vous que ce nom de classe correspond à celui spécifié dans le XML d'exécution lorsque vous avez créé la définition de modèle d'élément de règle de tarification : voir le paramètre name de l'élément
<class>.Voici un exemple de commande de tâche pour une condition qui détermine si le client s'est inscrit à une date spécifique, avant cette date ou après, afin de savoir s'il peut bénéficier de prix spéciaux :
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(); } - Dans le nouveau module, créez une implémentation de commande de tâche étendant la classe PriceRuleElementCmdImpl. Cette commande de tâche doit implémenter l'interface que vous avez définie à l'étape précédente. Donnez à la classe un nom qui utilise cette syntaxe : pricerule_element_nameElementCmdImple ; par exemple,
RegistrationTimeConditionElementCmdImpl.Pour les conditions et les actions, cette implémentation de commande de tâche doit implémenter la méthode performExecute. Elle peut également implémenter la méthode validateParameters afin de valider que l'élément comporte tous les paramètres d'interface utilisateur requis.
- Pour tout message d'erreur côté serveur dans la commande de tâche, créez une classe de clé de message :
- Créez un fichier de propriétés pour définir le texte du message d'erreur côté serveur :