---
title: Configuration settings
summary: Configuration keys consumed by this library, retrieval methods, and runtime dependencies.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business
reference_type: package
---

# Configuration settings

`SAIF.Business` consumes runtime configuration through environment-service abstractions, a legacy `clsProperties` XML lookup, and generated `ApplicationSettingsBase` web-service URL defaults. No direct `ConfigurationManager.AppSettings`, secure-setting, or explicit connection-string usage was identified in the provided findings.

## Configuration retrieval methods

| Method | Class / Interface | Namespace | Usage pattern |
| --- | --- | --- | --- |
| `AppGlobal.EnvironmentService.GetConfigSetting(key)` | `IEnvironmentService (via AppGlobal)` | `SAIF.Framework.Security (static accessor)` | Static plain-text config retrieval used directly in business logic. Business\SAIF.Business\clsUserType.vb, Business\SAIF.Business\ContactInfo\clsEmailAddress.vb |
| `EnvironmentService.GetConfigSetting(key)` | `IEnvironmentService (instance property)` | `SAIF.Core.Services` | Instance-style access inside ImageServices. Business\SAIF.Business\ImageServices.vb |
| `AppGlobal.EnvironmentService.GetApplicationEnvironment()` | `IEnvironmentService (via AppGlobal)` | `SAIF.Framework.Security` | Returns an ApplicationEnvironment enum value used to branch behavior by deployment tier (no string key). Business\SAIF.Business\BankValidatorServices.vb |
| `AppGlobal.EnvironmentService.GetConvertedDevelopmentEnvironment()` | `IEnvironmentService (via AppGlobal)` | `SAIF.Framework.Security` | Returns a DevelopmentEnvironment enum value used to select an image-server hostname (no string key). Business\SAIF.Business\ImageInfo.vb |
| `AppGlobal.EnvironmentService.IsProduction` | `IEnvironmentService (via AppGlobal)` | `SAIF.Framework.Security` | Boolean property used to gate test-user exclusion in SQL. Business\SAIF.Business\Services\ExternalUserServices.vb |
| `clsProperties.getProperty(appName, propertyName)` | `clsProperties` | `(Legacy SAIFProperties/Foundation Objects — Properties.xml pattern)*` | Reads a legacy properties.xml file resolved from the current web app's physical path (APPL_PHYSICAL_PATH); used for a single URL lookup. Business\SAIF.Business\Services\ExternalUserServices.vb |
| `My.MySettings (ApplicationSettingsBase)` | `SAIF.Business.My.MySettings` | `System.Configuration (ClientSettingsSection)` | Typed settings consumed only by generated Web Reference proxy classes to set .Url. Business\SAIF.Business\Web References\SAIFDates\Reference.vb, Business\SAIF.Business\Web References\SAIFEmailValidator\Reference.vb, Business\SAIF.Business\Web References\EmailValidator\Reference.vb |

## Environment API settings

| Setting key | Method | Data type | Purpose | Consuming class | Source |
| --- | --- | --- | --- | --- | --- |
| `BDS_USER` | `GetConfigSetting` | String | Runtime setting consumed by `clsUserType`. | `clsUserType` | `Business\SAIF.Business\clsUserType.vb` |
| `bdsDatabase` | `GetConfigSetting` | String | Runtime setting consumed by `clsUserType`. | `clsUserType` | `Business\SAIF.Business\clsUserType.vb` |
| `BDS_DATABASENAME` | `GetConfigSetting` | String | Runtime setting consumed by `clsUserType`. | `clsUserType` | `Business\SAIF.Business\clsUserType.vb` |
| `primaryDomainControllerServer` | `GetConfigSetting` | String | Runtime setting consumed by `clsEmailAddress (shared field initializer)`. | `clsEmailAddress (shared field initializer)` | `Business\SAIF.Business\ContactInfo\clsEmailAddress.vb` |
| `legacyMailValidatorServiceUrl` | `GetConfigSetting` | String | Runtime setting consumed by `clsEmailAddress`. | `clsEmailAddress` | `Business\SAIF.Business\ContactInfo\clsEmailAddress.vb` |
| `imagingapiurl` | `GetConfigSetting` | String | Runtime setting consumed by `ImageServices`. | `ImageServices` | `Business\SAIF.Business\ImageServices.vb` |

## AppSettings (Web.config)

No `ConfigurationManager.AppSettings` usage or `<appSettings>` entries were identified for this library.

## Database connection configuration

No explicit connection-string retrieval or `DbConnectionManager` usage was identified. Oracle connectivity is inherited through framework data-access helpers, while `app.config` registers the Oracle managed provider.

## Secure settings

No `GetSecureConfigSetting` or equivalent encrypted-setting retrieval was identified in the provided findings.

## ApplicationSettingsBase defaults

| Setting key | Default value | Purpose | Consuming class | Source |
| --- | --- | --- | --- | --- |
| `SAIF_Business_EmailValidator_clsEmailValidator` | `http://localhost/WebServices/sendmail/clsEmailValidator.asmx` | Web Reference URL default. | `SAIF.Business.My.MySettings` | `Business\SAIF.Business\app.config` |
| `SAIF_Business_SAIFDates_SAIFDates` | `http://saifonline/webservices/saifdates/saifdates.asmx` | Web Reference URL default. | `SAIF.Business.My.MySettings` | `Business\SAIF.Business\app.config` |
| `SAIF_Business_SAIFEmailValidator_clsEmailValidator` | `http://webprod00/WebServices/sendmail/clsEmailValidator.asmx` | Web Reference URL default. | `SAIF.Business.My.MySettings` | `Business\SAIF.Business\app.config` |

## Custom configuration sections

| Section name | Handler type | Purpose | Source |
| --- | --- | --- | --- |
| `oracle.manageddataaccess.client` | `OracleInternal.Common.ODPMSectionHandler (Oracle.ManagedDataAccess)` | Oracle Managed Data Access driver configuration. | `Business\SAIF.Business\app.config` |
| `SAIF.Business.My.MySettings (under applicationSettings)` | `System.Configuration.ClientSettingsSection` | Declares the typed Web Reference URL settings (see ApplicationSettingsBase settings). | `Business\SAIF.Business\app.config` |

## Transitive configuration (from dependencies)

| Setting key | Method | Source dependency | Dependency type | Purpose |
| --- | --- | --- | --- | --- |
| `SAIF.BOF.Framework` environment-service requirements** | `GetConfigSetting` | `SAIF.BOF.Framework`, `SAIF.Web.API.Clients`, `SAIF.Legacy.BankValidator`, `ImagingAPI.Client`, `PdfAPI.Client` | NuGet | Runtime configuration expectations for packaged dependencies were not resolved in the provided findings.** |

## Environment variance assessment

| Setting key | Varies by environment | Classification basis |
| --- | --- | --- |
| `BDS_USER` | Yes | Database login identifier, expected to differ per environment. |
| `bdsDatabase` | Yes | Database/server name, expected to differ per environment. |
| `BDS_DATABASENAME` | Yes | Database name, expected to differ per environment. |
| `primaryDomainControllerServer` | Yes | Domain controller hostname resolved via DNS; varies by network/environment. |
| `legacyMailValidatorServiceUrl` | Yes | Contains a service URL. |
| `imagingapiurl` | Yes | Contains a service URL. |
| `GetApplicationEnvironment() result` | Yes (by definition) | Directly represents the deployment tier (Dev/Test/Qa/Prod). |
| `GetConvertedDevelopmentEnvironment() result` | Yes (by definition) | Directly represents the deployment tier used to select an image-server hostname. |
| `IsProduction` | Yes (by definition) | Boolean flag representing whether the current environment is production. |
| `BUSINESS_ONLINE_LOGIN / NAVIGATION/LAST_LOGIN_URLS/IW (Properties.xml)` | Yes | Contains a navigation URL. |
| `SAIF_Business_EmailValidator_clsEmailValidator` | Yes | Web Reference URL; differs across dev/prod defaults already visible in config. |
| `SAIF_Business_SAIFDates_SAIFDates` | Yes | Web Reference URL. |
| `SAIF_Business_SAIFEmailValidator_clsEmailValidator` | Yes | Web Reference URL. |

## Configuration dependencies

| Dependency | Type | Required at | Impact if missing |
| --- | --- | --- | --- |
| `AppGlobal.EnvironmentService` / `IEnvironmentService` | Framework service | Runtime | Environment-derived URLs, database identifiers, and classification checks cannot be resolved. |
| `properties.xml` via `clsProperties` | Legacy XML file | Runtime | `ExternalUserServices` cannot resolve the Business Online last-login URL. |
| Web Reference URL settings in `app.config` | Application settings | Runtime | Generated SOAP proxies fall back to missing or incorrect endpoint URLs. |
| Oracle managed provider registration | Configuration section | Startup / runtime | Oracle-backed queries and procedure calls cannot execute. |

> **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.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Security and authorization](security-authorization.md)
- [API reference](api/index.md)

## Sources
- `Business\SAIF.Business\app.config`
- `Business\SAIF.Business\packages.config`
- `Business\SAIF.Business\SAIF.BOF.Business.vbproj`
- `Business\SAIF.Business\BankValidatorServices.vb`
- `Business\SAIF.Business\clsUserType.vb`
- `Business\SAIF.Business\ImageInfo.vb`
- `Business\SAIF.Business\ImageServices.vb`
- `Business\SAIF.Business\ContactInfo\clsEmailAddress.vb`
- `Business\SAIF.Business\Services\ExternalUserServices.vb`
- `Business\SAIF.Business\SAIFWebServices.vb`
- `Business\SAIF.Business\Web References\SAIFDates\Reference.vb`
- `Business\SAIF.Business\Web References\EmailValidator\Reference.vb`
- `Business\SAIF.Business\Web References\SAIFEmailValidator\Reference.vb`
- `Legacy\SAIFProperties\clsProperties.vb`
