Skip to content

Configuration settings

SAIF.Business.Claim.Legal is a configuration-light library. Despite being the largest library in the solution (~22,677 LOC, 47 source files), it reads exactly two named configuration values, both from the SAIF environment service and both confined to Print\clsLetterRequest.vb. It reads no AppSettings, defines no connection strings, holds no secrets, and declares no application-scoped settings. Its real environment dependence is expressed through the environment classification itself: five call sites compare GetApplicationEnvironment() against ApplicationEnvironment.Prod and propagate a testing boolean into clsAssignmentProcess, which governs whether Exchange calendar entries and notification e-mails go to real attorneys or to test mailboxes.

Configuration retrieval methods

Method Class / Interface Namespace Usage pattern
GetConfigSetting(<key>) AppGlobal.EnvironmentService SAIF.Framework.Security Retrieves a named plain-text configuration value; 2 call sites
GetApplicationEnvironment() AppGlobal.EnvironmentService SAIF.Framework.Security Returns the current ApplicationEnvironment classification; compared against Prod at 5 call sites

Environment API settings

Settings retrieved via IEnvironmentService (centralized environment configuration service).

Setting key Method Data type Purpose Consuming class Source
xpressionsoutputdocumentspath GetConfigSetting String Filesystem/UNC path where Xpressions-generated legal letter output documents are written/read clsLetterRequest SAIF.Business.Claim.Legal\Print\clsLetterRequest.vb:345
Legal.LettersManagingAttorneyUserId GetConfigSetting String User ID of the managing attorney stamped onto generated legal letters/letter requests clsLetterRequest SAIF.Business.Claim.Legal\Print\clsLetterRequest.vb:478

Environment classification checks

# API call Comparison Source Effect
1 GetApplicationEnvironment() <> ApplicationEnvironment.Prod SAIF.Business.Claim.Legal\LegalNet\clsConsolidations.vb:264 Sets the testing flag passed into the consolidation/assignment path
2 GetApplicationEnvironment() <> ApplicationEnvironment.Prod SAIF.Business.Claim.Legal\LegalNet\clsConsolidations.vb:463 As above (second consolidation entry point)
3 GetApplicationEnvironment() <> ApplicationEnvironment.Prod SAIF.Business.Claim.Legal\LegalNet\clsLegalSchedule.vb:538 Sets testing for schedule-driven notification
4 GetApplicationEnvironment() <> ApplicationEnvironment.Prod SAIF.Business.Claim.Legal\LegalNet\clsLegalSchedule.vb:559 As above (second schedule entry point)
5 GetApplicationEnvironment() <> ApplicationEnvironment.Prod SAIF.Business.Claim.Legal\TableMaint\clsAttorneySchedule.vb:239 Sets testing for attorney-schedule notification

The resulting boolean is passed into the clsAssignmentProcess constructor (LegalNet\clsAssignmentProcess.vb:411) as the testing argument, which redirects Exchange/Outlook calendar writes and outbound e-mail to test mailboxes (ztstatt2, ztstatt3, ztstatt4) in every non-production environment.*

⚠️ Non-prod-inclusive logic: the check is <> Prod, so any environment that is not explicitly classified as Production (including a misconfigured one) takes the test path. Conversely, if the environment service reports Prod in a lower environment, real attorney mailboxes would be written to.*

AppSettings (Web.config)

None. There is no ConfigurationManager.AppSettings access anywhere in this library's 47 .vb files. SAIF.Business.Claim.Legal\app.config and Web.config declare no <appSettings> entries — only the oracle.manageddataaccess.client configSection, DbProviderFactories registration, and assembly binding redirects.

The hosting application (LegalMaintenance\Web.config) declares ApplicationHost = np17, but this key is not consumed anywhere in SAIF.Business.Claim.Legal.*

Database connection configuration

Connection name Provider Retrieval method Purpose Source
(none declared) Oracle.ManagedDataAccess.Client (ODP.NET Managed Driver, 4.122.21.1 / NuGet 21.5.0) Resolved by the SAIF BOF data portal (IDataPortalInfo) at runtime Oracle database access for all criteria/collection loads SAIF.Business.Claim.Legal\app.config

No <connectionStrings> element exists in the library's own config files; the host Web.config declares only an empty <connectionStrings /> element. The connecting Oracle user/schema and TNS/service-name target cannot be determined from this repository.**

Secure settings

None. Zero GetSecureConfigSetting calls, zero hashing of config values, zero encrypted config sections, and zero credentials/API keys/tokens found in source. Both configuration keys in this library are retrieved as plain text; neither is a credential, though both are environment-sensitive/business-sensitive (see table above).

Transitive configuration (from dependencies)

SAIF.Business.Claim.Legal project-references SAIF.Business.Claim, SAIF.Business.View.Policy, and SAIF.Services.Appworx (the last with no code usage found). Configuration required by the first two may surface at runtime through this library's operations and should be reconciled with their own Stage 1d-config analyses — this was not scanned as part of this task.*

Setting key Method Source dependency Dependency type Purpose
(not scanned) — SAIF.Business.Claim Project Reference Consumed via clsClaimData.GetData; transitive config unknown**
(not scanned) — SAIF.Business.View.Policy Project Reference Consumed via clsPolicyData.GetPolicyData; transitive config unknown**

Configuration dependencies

Dependency Type Required at Impact if missing
xpressionsoutputdocumentspath environment setting Environment service Runtime (letter generation) Xpressions letters fail to write or are written to a wrong/unavailable path
Legal.LettersManagingAttorneyUserId environment setting Environment service Runtime (letter generation) Wrong attorney attributed on outbound legal correspondence
GetApplicationEnvironment() classification Environment service Runtime (assignment, consolidation, scheduling) Misclassification can send real e-mail / write real attorney calendars from a lower environment, or vice versa
Oracle connection (portal-resolved) BOF IDataPortalInfo / framework Startup/runtime All persistence in this library fails without a resolvable Oracle connection
clsProperties.XMLPath (Exchange configuration XML path) External (not in this repository) Runtime (clsAssignmentProcess) Exchange/Outlook calendar sync fails; origin and configuration source could not be verified**

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Business.Claim.Legal\app.config
  • SAIF.Business.Claim.Legal\Print\clsLetterRequest.vb
  • SAIF.Business.Claim.Legal\LegalNet\clsConsolidations.vb
  • SAIF.Business.Claim.Legal\LegalNet\clsLegalSchedule.vb
  • SAIF.Business.Claim.Legal\TableMaint\clsAttorneySchedule.vb
  • SAIF.Business.Claim.Legal\LegalNet\clsAssignmentProcess.vb
  • SAIF.Business.Claim.Legal\My Project\Settings.Designer.vb
  • LegalMaintenance\Web.config