Paso 3: Implementar un escucha de sucesos

Es necesario implementar un nuevo escucha de sucesos para escuchar los sucesos generados del tipo del ejemplo de residencia en el extranjero que se producen como resultado de la activación de pruebas. Este escucha debe implementar la interfaz curam.pdc.impl.PDCEvents y proporcionar implementaciones para los tres métodos. Aquí es donde se puede iniciar el proceso de réplica así como cualquier otro proceso personalizado que pueda tener que producirse.

public class SampleForeignResidencyEventsListener 
  implements PDCEvents {

  @Inject
  private SampleForeignResidencyReplicator sampleForeignResidencyReplicator;

  public void insertedEvidenceActivated(
    EvidenceDescriptorDtls evidenceDescriptorDtls) 
    throws AppException, InformationalException {

    if (evidenceDescriptorDtls.evidenceType.equals("SAMPLEFOREIGNRESIDENCY")) {
      sampleForeignResidencyReplicator.replicateInsertEvidence(evidenceDescriptorDtls);
    }
  }
  
  public void modifiedEvidenceActivated(
    EvidenceDescriptorDtls evidenceDescriptorDtls,
    EvidenceDescriptorDtls previousActiveEvidDescriptorDtls)
    throws AppException, InformationalException {

    if (evidenceDescriptorDtls.evidenceType.equals("SAMPLEFOREIGNRESIDENCY")) {
      sampleForeignResidencyReplicator.replicateModifyEvidence(evidenceDescriptorDtls,
      previousActiveEvidDescriptorDtls);
    }
  }

  public void removedEvidenceActivated(
    EvidenceDescriptorDtls evidenceDescriptorDtls) 
    throws AppException, InformationalException {

	if (evidenceDescriptorDtls.evidenceType.equals("SAMPLEFOREIGNRESIDENCY")) {
      sampleForeignResidencyReplicator.replicateRemoveEvidence(evidenceDescriptorDtls);
    }
  }
}