Registro de Valores Programáticamente
Esta guía muestra cómo registrar valores de variables dinámicas directamente utilizando el DynamicExpressionRegistry API, sin utilizar archivos de configuración.
Descripción general
El registro programático es útil para:
-
Pruebas con valores específicos
-
Valores específicos de la entidad que varían por transacción
-
Integración con custom sistemas de configuración
-
Personalizado ConfigurableValueSource implementaciones
Requisitos previos
-
El
kfextensions-utilsdependencia (debería estar incluida de manera transitiva ya) -
Acceso a
DynamicExpressionRegistry
Registro Global
Registro Básico
Registre los valores directamente utilizando la clave de cadena:
import com.iconsolutions.kfextensions.runtime.DynamicExpressionRegistry;
// Get the singleton instance
DynamicExpressionRegistry registry = DynamicExpressionRegistry.getInstance();
// Register a value
registry.register("paymentService_upperBound", BigInteger.valueOf(5000));
// Register a list value
registry.register("paymentService_allowedCurrencies", Arrays.asList("USD", "EUR", "GBP"));
Registro Seguro por Tipo
Para una mejor seguridad de tipos, utilice el generado DynamicVariable constantes:
DynamicExpressionRegistry registry = DynamicExpressionRegistry.getInstance();
// Type-safe registration
registry.register(<Generated DEL>.upperBound, BigInteger.valueOf(5000));
registry.register(<Generated DEL>.allowedCurrencies, Arrays.asList("USD", "EUR"));
Este enfoque:
-
Asegura que la clave sea correcta (sin errores tipográficos)
-
Proporciona verificación de tipos en tiempo de compilación.
-
Facilita la refactorización
Registro con Alcance de Entidad
Los valores de ámbito de entidad están asociados con un específico ProcessingEntity y anule los valores globales para ese contexto de procesamiento.