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** |
Related documentation¶
- Library index
- Overview
- Architecture
- Dependencies
- Operations and processes
- Business rules
- Database tables
- SQL catalog
- Procedures
- API reference
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.configSAIF.Business.Claim.Legal\Print\clsLetterRequest.vbSAIF.Business.Claim.Legal\LegalNet\clsConsolidations.vbSAIF.Business.Claim.Legal\LegalNet\clsLegalSchedule.vbSAIF.Business.Claim.Legal\TableMaint\clsAttorneySchedule.vbSAIF.Business.Claim.Legal\LegalNet\clsAssignmentProcess.vbSAIF.Business.Claim.Legal\My Project\Settings.Designer.vbLegalMaintenance\Web.config