Step 1: Provide a Replicator Interface

The new replicator interface should contain three methods -

replicateInsertEvidence which replicates activated inserted Sample Foreign Residency evidence to the Sample Foreign Residency legacy database table. It accepts one parameter:

replicateModifyEvidence which replicates activated modified Sample Foreign Residency evidence to the Sample Foreign Residency legacy database table. It accepts two parameters:

replicateRemoveEvidence which replicates activated removed Sample Foreign Residency evidence to the Sample Foreign Residency legacy database table. It accepts one parameter:

@ImplementedBy(SampleForeignResidencyReplicatorImpl.class)
public interface SampleForeignResidencyReplicator {

  public void replicateInsertEvidence(
    final EvidenceDescriptorDtls evidenceDescriptorDtls)
    throws AppException, InformationalException;
  
  public void replicateModifyEvidence(
    final EvidenceDescriptorDtls evidenceDescriptorDtls, 
    final EvidenceDescriptorDtls previousActiveEvidDescriptorDtls)
    throws AppException, InformationalException;

  public void replicateRemoveEvidence(
    final EvidenceDescriptorDtls evidenceDescriptorDtls)
    throws AppException, InformationalException;
}