Expresiones Dinámicas

Descripción general

Las expresiones dinámicas proporcionan un mecanismo para definir variables dentro de sus modelos del Marco de Reglas de Negocio que pueden ser configurado en tiempo de ejecución a través de fuentes externas como HOCON archivos o registro programático.

Conceptos Clave

Las expresiones dinámicas constan de tres componentes principales:

  1. Variables Dinámicas- Definiciones de variables seguras para tipos generadas a partir de MPS bibliotecas de valores, con valores predeterminados que pueden ser anulados en tiempo de ejecución

  2. DynamicExpressionRegistry- Un registro central que almacena valores configurados y los proporciona al código generado durante la ejecución.

  3. Fuentes de Configuración- Proveedores intercambiables (como HOCON archivos) que cargan valores en el registro al inicio de la aplicación

Cómo Funciona

El flujo de trabajo es:

  1. Defina variables dinámicas en un MPS biblioteca de valores con valores predeterminados

  2. MPS genera un DynamicVariableLibrary clase que contiene las definiciones de variables

  3. Al iniciar la aplicación, las fuentes de configuración cargan valores en el DynamicExpressionRegistry

  4. Cuando se ejecuta el código generado, resuelve los valores de las variables del registro (o utiliza valores predeterminados).

Variables Dinámicas vs Bibliotecas de Valores

Las variables dinámicas se definen dentro de bibliotecas de valores, pero cumplen un propósito diferente:

Valores de la Biblioteca de Valores Variables Dinámicas

Valores estáticos compilados en el código generado

Valores configurables en tiempo de ejecución con valores predeterminados

No se puede cambiar sin reconstruir.

Puede ser anulado a través de la configuración externa.

Ideal para constantes y datos estáticos

Ideal para configuraciones específicas del entorno, umbrales, banderas de características.

Alcance

El DynamicExpressionRegistry admite dos niveles de alcance:

  • Alcance global- Valores disponibles para todas las ejecuciones

  • Alcance de la entidad- Valores específicos para un contexto de procesamiento (por ejemplo, anulaciones por transacción)

Los valores específicos de la entidad tienen prioridad sobre los valores globales, lo que permite un control detallado cuando sea necesario.

Casos de Uso

Las expresiones dinámicas son adecuadas para:

  • Umbrales específicos del entorno (por ejemplo, límites diferentes para dev/prod)

  • Banderas de características que pueden ser activadas sin necesidad de redepliegue.

  • Parámetros empresariales que cambian según los requisitos operativos

  • Configuración por entidad en escenarios multi-inquilino

Introducción

Para utilizar expresiones dinámicas en su aplicación:

  1. Defina variables dinámicas en su MPS biblioteca de valores

  2. Añada el ipf-studio-configuration-hocon-spring-starter dependencia

  3. Crear un HOCON archivo de configuración con sus valores

  4. El Spring Boot la auto-configuración maneja el registro automáticamente