Mandatos de tarea de elemento de regla de precio
Cada condición y acción tiene un mandato de tarea asociado que se denomina mandato de tarea de elemento de regla de precio. El mandato de tarea realiza el trabajo asociado al elemento de regla de precio. La definición de plantilla de elemento de regla de precio debe especificar el mandato de tarea a utilizar.
Los mandatos de tarea sirven para realizar varias funciones, tal como se describe en la tabla siguiente:
Función del mandato de tarea | Método al que se llama en el mandato de tarea | ¿Se aplica a condiciones? | ¿Se aplica a acciones? |
---|---|---|---|
Validar los parámetros del elemento de la regla de precio cuando se guarda la regla de precio. | validateParameters |
Sí, si es necesario. | Sí, si es necesario. |
Realizar el trabajo para el elemento de la regla de precio. | performExecute |
Sí, obligatorio. | Sí, obligatorio. |
Formato de un mandato de tarea
Un mandato de tarea de regla de precio debe ser una clase que implemente la interfaz com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmd.Para entender el formato de un mandato de tarea, revise los ejemplos de código siguientes. Los ejemplos son para una condición personalizada de ejemplo. El objetivo de la condición es determinar si el cliente se ha registrado un día específico, antes o después de dicho día, y, por consiguiente, puede disfrutar de precios especiales.
A continuación se muestra un ejemplo de la clase de interfaz de mandatos que amplía la interfaz 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();
}
Este ejemplo corresponde a una implementación de mandato de tarea que amplía la clase com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmdImpl. Estos fragmentos de código con número a la izquierda se explican más detalladamente después del ejemplo:
|
|
1 |
|
2 |
|
2a |
|
2b |
|
2c |
|
2d |
|
2e |
|
- 1 Este fragmento de código define el método
validateParameters
para validar los parámetros de la condición y devolver posibles errores. - 2 Este fragmento de código define el método
performExecute
, que evalúa el trabajo de la condición y devuelve el valor true o false:- 2a Este fragmento de código obtiene parámetros de contexto de negocio para el cliente.
- 2b Este fragmento de código obtiene la hora de registro real del cliente.
- 2c Este fragmento de código llama al método
getElementParameters
para obtener los parámetros que el mandato de tarea utiliza para realizar la evaluación. Los parámetros se definen como argumentos en el mandato de tarea de elemento de regla de precio. - 2d Este fragmento de código evalúa si la condición debe devolver true o false. Por ejemplo, si la condición es los clientes que se han registrado en febrero, la condición deberá devolver el valor true si el cliente que se está evaluando se registró en febrero.
- 2e Este fragmento de código informa a los servicios de precios si la condición ha devuelto el valor true o false.
Acerca de los métodos utilizados en un mandato de tarea de elemento de regla de precio
Esta tabla proporciona más detalles sobre métodos típicos utilizados en mandatos de tarea de regla de precio para condiciones y acciones. Para obtener una lista completa y una descripción de los métodos disponibles para los mandatos de tarea, consulte la clase com.ibm.commerce.price.rule.commands.element.PriceRuleElementCmdImpl.
Elemento de regla de precio | Métodos típicos utilizados |
---|---|
Condición |
|
Acción |
|