Skip to content

IErrorConditionHandler

IErrorConditionHandler is the contract that decouples the indexing and generation callers (PatientIndexer, ProviderIndexer/ProviderIndexerV2, BillServiceIndexer, GenerateCbpBills) from the concrete ErrorConditionHandler implementation, so those callers can record data-quality errors during OP-DOM-07 processing without depending on the entity-persistence details (DOM-BR-070).

Purpose

  • Declares the four error-recording operations (provider, patient, bill-service, bill-service-provider) that any implementation must support so callers can record errors polymorphically.

Context

  • Namespace: SAIF.Domain.Model.Claims.Ebilling
  • Assembly/package: SAIF.Domain (packaged in SAIF.SAIFCode.Core)

Public members

Member Signature Purpose
AddProviderError void AddProviderError(EbillProvider provider, string errorText) Records an error against provider; implemented as a pended, provider-flagged error by ErrorConditionHandler (DOM-BR-070).
AddPatientError void AddPatientError(EbillPatient patient, string errorText) Records an error against patient; implemented as a pended, non-provider-flagged error by ErrorConditionHandler (DOM-BR-070).
AddBillServiceError void AddBillServiceError(Ebill bill, string errorText, bool isPending = true) Records an error against bill, with the pended state controlled by isPending; implemented by ErrorConditionHandler (DOM-BR-070).
AddBillServiceProviderError void AddBillServiceProviderError(EbillService service, string errorText) Records an error against service's provider; implemented as a pended, provider-flagged error by ErrorConditionHandler (DOM-BR-070).

Behavioral notes

  • The interface carries no state and no default-interface-method bodies; all recording semantics (which flags get set) live entirely in the implementing class*.

Constraints and usage notes

  • SAIF.Domain provides exactly one implementation, ErrorConditionHandler; the interface exists primarily to make callers unit-testable against a substitute handler*.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • Domain/SAIF.Domain/Model/Claims/Ebilling/IErrorConditionHandler.cs
  • Domain/SAIF.Domain/Model/Claims/Ebilling/ErrorConditionHandler.cs