Implementaciones de pruebas recíprocas

Cuando se insertan, modifican o eliminan pruebas, se invoca un punto de gancho que, de forma predeterminada, desencadena la funcionalidad de manejador de pruebas recíprocas. Este punto de gancho de pruebas nuevo se denomina GlobalEvidenceHook y se puede encontrar en el paquete curam.core.sl.infrastructure.impl. La interfaz GlobalEvidenceHook permite que se produzca el proceso personalizado después de que se hayan completado las operaciones de prueba.

Interfaz GlobalEvidenceHook

La interfaz GlobalEvidenceHook contiene los métodos siguientes:

postInsertEvidence se invoca después que se hayan insertado pruebas y acepta dos parámetros:

postModifyEvidence se invoca después de que se hayan modificado las pruebas y acepta dos parámetros:

postRemoveEvidence se invoca después de que se hayan eliminado las pruebas y acepta dos parámetros:

postDiscardPendingUpdate se invoca después de que se descarte una actualización pendiente de las pruebas y acepta dos parámetros:

postDiscardPendingRemove se invoca después de que se descarte una eliminación pendiente de las pruebas y acepta dos parámetros:

Manejador de pruebas recíprocas

La implementación predeterminada para GlobalEvidenceHook invoca la funcionalidad de manejador de pruebas recíprocas. El manejador de pruebas recíprocas es responsable de todo el proceso de pruebas recíprocas común. Localiza las pruebas recíprocas y, si se encuentran, realiza en ellas los mismos cambios que se han realizado en las pruebas originales. Si no se encuentran las pruebas recíprocas y se han insertado las pruebas originales, insertará las pruebas recíprocas correspondiente. Dado que el manejador de pruebas recíprocas es básico para el proceso de pruebas recíprocas, no se puede personalizar directamente, pero se puede personalizar por medio de GlobalEvidenceHook, si fuera necesario.

Interfaz de conversión de pruebas recíprocas

La interfaz ReciprocalEvidenceConversion es responsable de la comparación de pruebas recíprocas y originales, de la recuperación de participantes y de crear pruebas recíprocas nuevas y modificadas a partir de las pruebas originales. Para que las pruebas personalizadas sean recíprocas, se debe proporcionar una implementación de interfaz ReciprocalEvidenceConversion. Mientras que el manejador no es consciente de la estructura interna de las pruebas, la implementación de interfaz de conversión sí lo es, de modo que es aquí donde se encuentra el principal punto de personalización. La interfaz ReciprocalEvidenceConversion se puede encontrar en el paquete curam.core.sl.infrastructure.impl y contiene los métodos siguientes:

El apartado siguiente muestra cómo implementar pruebas recíprocas.