Core Clases

Descripción general

A continuación se presenta una vista simplificada de los diversos core clases relacionadas con el modelo de mensaje IPF ISO2002:

core-classes

Los principales aspectos destacados son las siguientes clases:

Clase Descripción

ISO20022Message Model

Este es el punto de acceso principal para trabajar con instancias de Message Definition s. Es configurable singleton.

JsonMapper

Esto maneja JSON Serialización y Deserialización

XMLMapper

Esto maneja XML Serialización y Deserialización

MessageComponentValidator

Esto valida Message Definition s o Componentes de Mensaje, puede realizar Esquema Validación, Regla de Mensaje y Validación de Regla de Negocio

MessageDefinitionSpec

Este es el metadato generado para cada generado Message Definition. Se utiliza para proporcionar al ISO20022Message Model con contexto adicional para cada uno MessageDefinition(such as namespace). El ISO20022Message Model puede entonces utilizar este extra información para inicializar sus componentes, como el XMLMapper.

ISO20022Modelo De Mensaje

Este es el punto de entrada principal, es configurable singleton y se proporciona con contexto/metadatos de las MessageDefinitions generadas durante la instanciación, este contexto puede ser utilizado para iniciar los componentes de soporte subyacentes.

El ISO20022Message Model contiene un sobrecargado

ISO20022MessageModel.init()

método así como un tradicional

ISO20022MessageModel.getInstance()

La llamada init() realiza un singleton verifique de la misma manera que get Instance(), sin embargo, diferenciamos con la intención de que init() pueda aceptar argumentos de configuración, y esperamos que esto ocurra solo una vez dentro de una aplicación.

El comportamiento esperado es una única init() al inicio de la aplicación, y luego el uso de get Instance() en adelante.

Llamadas repetidas a init() devolverán la instancia original y registrarán un error.

Llamar a get Instance() sin haberlo inicializado previamente a través de init() resultará en una Excepción de Tiempo de Ejecución.

Cambio de API probable

Este enfoque de init() frente a getInstance() probablemente se cambiará a un único método invocable.