Skip to content

Application dependencies

SAIF.Claims.Intake is an ASP.NET Web Forms application on .NET Framework 4.8 whose dependency surface splits cleanly in three. Six internal libraries carry the intake capabilities themselves, four of which live in this repository and two of which arrive as NuGet packages built elsewhere in the SAIF estate. The external surface is small and old: Infragistics for the grid and date controls used on every screen, log4net for logging, and the .NET Framework web service stack. The application holds no direct database connection — all claim and claimant data is read and written through the claims web service — so a schema change reaches this application only through a service contract change.

Internal dependencies

Dependency Reference Type Consuming libraries Usage
SAIF.Claims.Intake.Search Project Reference SAIF.Claims.Intake Builds search criteria from the Claim Search screen, calls the claims web service, and applies the 250-row result cap before binding the grid.
SAIF.Claims.Intake.Capture Project Reference SAIF.Claims.Intake Assembles a first report of injury from the New Claim screen and submits it to the claims web service.
SAIF.Claims.Intake.Claimants Project Reference SAIF.Claims.Intake Reads and updates claimant name, address, and employment records shared across claims.
SAIF.Claims.Intake.Triage Project Reference SAIF.Claims.Intake Evaluates injury type, severity, and employer service team to select the destination adjuster queue.
SAIF.Claims.Intake.ServiceProxy NuGet Package (same-repo) SAIF.Claims.Intake.Search, SAIF.Claims.Intake.Capture, SAIF.Claims.Intake.Claimants Wraps the generated claims web service proxy and applies Windows credentials, the 90-second timeout, and retry handling.
SAIF.Framework.Validation NuGet Package SAIF.Claims.Intake.Search, SAIF.Claims.Intake.Capture, SAIF.Claims.Intake.Claimants Validates claim numbers, policy numbers, date-of-injury ranges, and required-field combinations before any service call is made.
SAIF.Claims.Intake.Web.Controls Project Reference SAIF.Claims.Intake Shared user controls (claim header banner, claimant picker, jurisdiction dropdown) used across the nine intake screens. No documentation set was generated for this project.

External dependencies

Dependency Version Consuming libraries Usage
Infragistics.Web.UI.GridControls 20.1.20201.288 SAIF.Claims.Intake, SAIF.Claims.Intake.Search WebDataGrid bound to search results on ClaimSearch.aspx, providing sorting, paging, and row selection.
Infragistics.Web.UI.EditorControls 20.1.20201.288 SAIF.Claims.Intake WebDatePicker and WebMaskEditor used for date-of-injury, policy number, and SSN entry on the intake screens.
Infragistics.Web.UI.LayoutControls 20.1.20201.288 SAIF.Claims.Intake WebSplitter and tab layout on the New Claim screen that separates claimant, employer, and injury panels.
log4net 2.0.15 SAIF.Claims.Intake, SAIF.Claims.Intake.ServiceProxy Writes unhandled exceptions from Global.asax.vb and service call failures and timings to the shared application log.
System.Web.Services 4.0.0.0 SAIF.Claims.Intake.ServiceProxy Hosts the generated ASMX proxy classes for the claims and policy web services.
System.Web.Extensions 4.0.0.0 SAIF.Claims.Intake ScriptManager and partial-page update support behind the Infragistics controls.
System.Runtime.Caching 4.0.0.0 SAIF.Claims.Intake.Triage Caches the adjuster queue and service team lookup lists for 30 minutes to avoid a service call on every triage decision.
Newtonsoft.Json 13.0.3 SAIF.Claims.Intake.Search Serializes the saved-search criteria stored in the user preference cookie.
AjaxControlToolkit 19.1.0 SAIF.Claims.Intake Supplies the modal confirmation popup used when an intake specialist abandons an unsaved claim report.

Transitive dependencies

Dependencies in this section are inherited from dependency framework libraries. They are not directly referenced by the application but are required at runtime through framework packages.

Dependency Source framework Type Usage
SAIF.Framework.Core SAIF.Framework.Validation Transitive Supplies ValidationComponentBase, framework tracing, and the initialization guard that the validation engine inherits.†
SAIF.Framework.Policy.Types SAIF.Framework.Validation Transitive Provides the PolicyPeriod and JurisdictionCode value types the policy number and date-range rules evaluate.†
SAIF.Framework.Environment SAIF.Framework.Core Transitive Resolves the environment key that selects the claims web service endpoint at application start.†
SAIF.Framework.Diagnostics SAIF.Framework.Core Transitive Provides the trace listener that framework component trace entries are routed to.†

API dependencies

Endpoint Method Called from Direction Usage
/ClaimsService/ClaimSearch.asmx POST SAIF.Claims.Intake.Search outbound Executes the claim search from ClaimSearch.aspx.vb and returns up to 250 matching claim summaries.
/ClaimsService/ClaimMaintenance.asmx POST SAIF.Claims.Intake.Capture outbound Submits a first report of injury and returns the assigned claim number.
/ClaimsService/ClaimantMaintenance.asmx POST SAIF.Claims.Intake.Claimants outbound Reads and updates claimant demographic and employment records.
/PolicyService/PolicyLookup.asmx POST SAIF.Claims.Intake.Capture outbound Verifies that the entered policy number is in force on the date of injury and returns the employer service team.
/ClaimsService/TriageQueue.asmx POST SAIF.Claims.Intake.Triage outbound Assigns a recorded claim to an adjuster queue and returns the queue name for confirmation.

External web application navigations

Target application URL pattern Trigger Parameters Screens involved
SAIF.Claims.Adjuster /Adjuster/ClaimDetail.aspx?claimNo=25-0148392 Intake specialist clicks the claim number link in a search result row claimNo Claim Search
SAIF.Policy.Inquiry /PolicyInquiry/PolicyDetail.aspx?policyNo=WC0034871&asOf=2026-07-22 Intake specialist clicks "View policy" beside the verified policy number policyNo, asOf New Claim
SAIF.DocumentImaging /Imaging/Search.aspx?claimNo=25-0148392&source=INTAKE Supervisor opens the imaged first report from the claim confirmation panel claimNo, source Claim Confirmation

Cross-application integrations

Integration Protocol Data exchanged Libraries involved Usage
Overnight intake extract SMB file drop Pipe-delimited file of claims recorded since the previous run SAIF.Claims.Intake.Capture Written to the shared extract share each evening and consumed by the state reporting job that files first reports with the Oregon Workers' Compensation Division.
Adjuster queue notification SMTP Queue name, claim number, and severity indicator SAIF.Claims.Intake.Triage Sends a notification to the receiving adjuster team distribution list when a claim is triaged as urgent.

Dependency risks and notes

  • The Infragistics 20.1 control suite is out of support and is the single largest upgrade blocker for this application. Every screen binds at least one Infragistics control, so a version change is an application-wide regression test, not a per-screen one.
  • log4net 2.0.15 is the version pinned across the SAIF .NET Framework 4.8 estate. Upgrading it here alone would produce assembly binding redirect conflicts with SAIF.Framework.Validation.
  • SAIF.Framework.Validation is consumed as a NuGet package, so a rule change reaches the intake screens only when the package version is bumped in the project file and the application is redeployed. The batch consumers of the same library can be running a different version.
  • SAIF.Claims.Intake.ServiceProxy is consumed as a same-repo NuGet package rather than a project reference. Building the solution does not rebuild the proxy, so a service contract change requires an explicit package rebuild and version bump.
  • SAIF.Claims.Intake.Web.Controls has no documentation set, so the shared user controls used on every screen are undocumented. It is a project reference in the same repository and should be added to the documentation scope.
  • All five service endpoints are ASMX and are called synchronously on the request thread with a 90-second timeout. A slow claims service therefore ties up ASP.NET worker threads rather than failing fast.
  • AjaxControlToolkit 19.1.0 is used for a single confirmation popup. Replacing it with a plain client-side confirmation would remove a dependency from the application entirely.

Sources

  • src/SAIF.Claims.Intake/SAIF.Claims.Intake.vbproj
  • src/SAIF.Claims.Intake/packages.config
  • src/SAIF.Claims.Intake/Web.config
  • src/SAIF.Claims.Intake/Global.asax.vb
  • src/SAIF.Claims.Intake/Claims/ClaimSearch.aspx.vb
  • src/SAIF.Claims.Intake/Claims/ClaimNew.aspx.vb
  • src/SAIF.Claims.Intake.ServiceProxy/SAIF.Claims.Intake.ServiceProxy.vbproj
  • src/SAIF.Claims.Intake.Triage/TriageRouter.vb