Configuration settings¶
SAIF.Services.Appworx is effectively configuration-free: it declares no named setting keys, holds no secrets, and reads no connection strings. Its only runtime-variable behavior is a single environment discrimination call, and even that selects between two hard-coded Oracle database aliases rather than configured values.
Configuration retrieval methods¶
| Method | Class / Interface | Namespace | Usage pattern |
|---|---|---|---|
GetApplicationEnvironment() |
IEnvironmentService, reached statically via AppGlobal.EnvironmentService |
SAIF.Core.Services (service); SAIF.Framework.Security (the AppGlobal accessor) |
Called once, inside the Shared SubmitBatchJob overload, and only when inUseWCISDEV1AppworxForAllDevEnv = True. The returned value is compared against ApplicationEnvironment.Prod to choose a hard-coded Oracle database alias (BR-002). Environment discrimination, not key-based configuration retrieval. |
New clsMSOracleDataLayer(schema, database) → .DataPortalInfo() |
clsMSOracleDataLayer |
SAIF.Framework |
Constructs an Oracle data layer from hard-coded literal schema/database values ("PRADT" + "WCISPROD"/"WCISDEV1") and derives an IDataPortalInfo from it. Connection details are resolved inside the framework from the alias, not from any config value read in this library. |
Environment API settings¶
No named configuration keys are retrieved by this library. The single IEnvironmentService interaction is an environment query (GetApplicationEnvironment()), not a keyed GetConfigSetting/GetSecureConfigSetting lookup, so it has no setting-key value.
| Setting key | Method | Data type | Purpose | Consuming class | Source |
|---|---|---|---|---|---|
| (none — no key; environment discriminator) | GetApplicationEnvironment() |
ApplicationEnvironment (enum) |
Distinguishes production from every other environment to select the override routing target (BR-001, BR-002) | clsRequestAppworxJob (Shared SubmitBatchJob) |
SAIF.Services.Appworx/clsRequestAppworxJob.vb |
AppSettings (Web.config)¶
None. Neither SAIF.Services.Appworx/App.config nor SAIF.Services.Appworx/Web.config declares an <appSettings> section, and no ConfigurationManager.AppSettings read exists in any .vb file in the project.
| Setting key | Default value | Purpose | Consuming class | Source |
|---|---|---|---|---|
| — | — | — | — | — |
Database connection configuration¶
The library performs no connection-string retrieval — no DbConnectionManager, no <connectionStrings>, no GetOracleConnectionString. Connections arrive by one of two paths:
| Connection name | Provider | Retrieval method | Purpose | Source |
|---|---|---|---|---|
Caller-supplied data portal (inDPI) — default path |
Oracle (ODP.NET Managed Driver) | None — the IDataPortalInfo is passed in by the caller |
Normal submission path used by all three in-repo callers; submit_appworx_job executes against whatever schema/database the caller's portal resolves to |
SAIF.Services.Appworx/clsRequestAppworxJob.vb |
PRADT @ WCISPROD — override path, production |
Oracle (ODP.NET Managed Driver) | None — hard-coded literals in source | Dedicated Appworx-hosting database used when inUseWCISDEV1AppworxForAllDevEnv = True and the environment is Prod (BR-001) |
SAIF.Services.Appworx/clsRequestAppworxJob.vb |
PRADT @ WCISDEV1 — override path, all non-production |
Oracle (ODP.NET Managed Driver) | None — hard-coded literals in source | Single shared development Appworx database used when the flag is set and the environment is anything other than Prod (BR-002) |
SAIF.Services.Appworx/clsRequestAppworxJob.vb |
| ODP.NET Managed Driver provider registration | Oracle | oracle.manageddataaccess.client config section + Oracle.ManagedDataAccess.Client invariant |
Makes the Oracle managed factory available to the data layer; supplies no endpoint of its own | SAIF.Services.Appworx/App.config, SAIF.Services.Appworx/Web.config |
Hard-coded environment routing. Database targeting on the override path is compiled into the source, not configured — the schema (PRADT) and both database aliases (WCISPROD, WCISDEV1) are string literals. Retargeting any of them requires a code change and redeploy; they cannot be adjusted through the environment API, Web.config, or a connection string. This override path has no caller inside this repository — all three in-repo call sites leave the flag at its False default, so the hard-coded routing is currently inert*.
Secure settings¶
None. No GetSecureConfigSetting, no SystemHashUtil.ComputeHash, no SystemType.*, no credentials, passwords, API keys, tokens, or encrypted values appear anywhere in SAIF.Services.Appworx/. Database credentials are never handled by this library — they are resolved by the framework data layer behind the alias.
| Setting key | Encryption method | Purpose | Consuming class | Source |
|---|---|---|---|---|
| — | — | — | — | — |
Transitive configuration (from dependencies)¶
| Setting key | Method | Source dependency | Dependency type | Purpose |
|---|---|---|---|---|
| (unspecified — inherited) | Framework-internal | SAIF.BOF.Framework |
NuGet package | Whatever config keys IEnvironmentService and clsMSOracleDataLayer require (environment classification source, Oracle TNS/alias resolution, credential lookup) must be provided by the hosting application's Web.config and the environment API — none are visible in, or satisfiable by, this class library** |
Configuration dependencies¶
| Dependency | Type | Required at | Impact if missing |
|---|---|---|---|
oracle.manageddataaccess.client config section + DbProviderFactories registration |
Config section | Runtime (hosting application's merged config) | Without the ODP.NET managed factory registration, the Oracle provider cannot be resolved by name in the hosting application |
Hosting application's environment/config infrastructure (behind IEnvironmentService, clsMSOracleDataLayer) |
Service | Runtime | Environment discrimination and Oracle alias/TNS resolution fail if the hosting application does not supply this infrastructure** |
Related documentation¶
- Library index
- Overview
- Architecture
- Dependencies
- Operations and processes
- Business rules
- SQL catalog
- Procedures
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.Services.Appworx/clsRequestAppworxJob.vbSAIF.Services.Appworx/App.configSAIF.Services.Appworx/Web.configSAIF.Services.Appworx/My Project/Settings.Designer.vb