---
title: SAIF.Framework.Connection overview
summary: High-level purpose, scope, and responsibilities for this library.
status: draft
owner: <owner>
last_reviewed: 2026-07-23
library: SAIF.Framework.Connection
reference_type: package
---

# SAIF.Framework.Connection overview

> **Documentation context:** Framework
> **Documented via:** Referenced by the repository-wide `SAIF.BOF.Framework` nuspec glob (`SAIF.Framework.Core\SAIF.BOF.Framework.Core.nuspec`)

`SAIF.Framework.Connection` is a thin, single-purpose connection-string resolution helper. It exposes one public class, `clsConnection`, which populates the `ConnectionString` property of a caller-supplied `OracleConnection` or `SqlConnection` object, resolving the actual string either locally (Oracle-only override path) or via a remote `ConnectInfo` SOAP web service.

## Purpose
- Resolve Oracle and SQL Server connection strings on behalf of calling business/application code, without performing any SQL execution or connection lifecycle management itself.
- Consumed by any business or application code in the repository that needs to obtain a populated `OracleConnection` or `SqlConnection` object before opening it.*

## Responsibilities
- Populate the `ConnectionString` property of a caller-supplied `OracleConnection` via the Oracle overload of `getConnection`.
- Populate the `ConnectionString` property of a caller-supplied `SqlConnection` via the SQL Server overload of `getConnection`.
- Delegate connection-string resolution to the remote `ConnectInfo` ASMX/SOAP web service, except when explicit Oracle credentials are supplied at construction.
- Apply Oracle-specific post-processing to web-service-resolved connection strings (stripping `Load Balance Timeout=900;` and substituting the `ZSPECIALCHAR` token with `Chr(7)`).*

## Key components
- `clsConnection`: the sole public entry point; owns constructor-based override state and both `getConnection` overloads.
- `ConnectInfo.ConnectInfo` (auto-generated SOAP client proxy): invoked internally to call `GetOracleConnectString` and `GetSQLConnectString` on the remote web service.
- `ConnectInfo.ConnectRequestInfo` (auto-generated DTO): carries the request composite (`OSUserid`, `Code`, `Database`, `Server`) passed to the SOAP proxy.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Configuration](configuration.md)
- [API reference](api/index.md)

> **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.Framework.Connection\clsConnection.vb`
- `SAIF.Framework.Connection\SAIF.BOF.Framework.Connection.vbproj`
- `SAIF.Framework.Core\SAIF.BOF.Framework.Core.nuspec`
