Skip to content

IProviderIndexer

IProviderIndexer is the contract both provider-location-matching implementations — ProviderIndexer (OP-DOM-03, the original tax-ID/address matching algorithm) and ProviderIndexerV2 (OP-DOM-04, the rule-set-based matcher) — implement, letting callers such as the e-billing batch pipeline invoke whichever indexer is configured without depending on which matching algorithm is in use.

Purpose

  • Defines the single entry point for indexing a batch's non-indexed e-billing providers to a provider location, so batch orchestration code can depend on the interface rather than on ProviderIndexer or ProviderIndexerV2 directly.
  • Standardizes the inputs an indexer needs: the batch id, the e-billing query provider for data access, an IErrorConditionHandler for recording match failures, and the update-user stamp for indexed records.

Context

  • Namespace: SAIF.Domain.Claims.Ebilling.Indexing
  • Assembly/package: SAIF.Domain (Domain/SAIF.Domain/SAIF.Domain.csproj, .NET Framework 4.6.2 class library)

Public members

Member Signature Purpose
IndexProvidersToLocation ResultCount IndexProvidersToLocation(long batchId, IEbillingQueryProvider queryProvider, IErrorConditionHandler errorConditionHandler, string updateUser) Indexes every non-indexed e-billing provider in the batch to a matched provider location, returning a ResultCount of successes and failures (DOM-BR-020, DOM-BR-021).

Behavioral notes

  • Both implementing classes report a missing tax-ID match and unmatched addresses through the supplied IErrorConditionHandler rather than throwing, so callers must inspect recorded error conditions in addition to the ResultCount*.

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/Claims/Ebilling/Indexing/IProviderIndexer.cs