SAIF.NetCore.DBConnectionClient dependencies¶
SAIF.NetCore.DBConnectionClient depends only on the foundation SAIF.NetCore.ServiceContracts package for its interfaces and exception base type, carries no third-party packages in the shipped assembly, and makes its own outbound HTTP calls to a remote DBConnectionAPI service through the injected IHttpJsonClient contract at caller request time.
Internal dependencies¶
| Dependency | Reference Type | Usage |
|---|---|---|
| SAIF.NetCore.ServiceContracts | NuGet Package (same-repo) | Implements IDBConnectionClient; consumes IHttpJsonClient, IHttpRequestResult, and IEnvironmentClient interfaces, and extends SAIFException for DBClientException. |
External dependencies¶
None in the shipped library. The test project references coverlet.collector, Microsoft.NET.Test.Sdk, NSubstitute, xunit, and xunit.runner.visualstudio, none of which ship with the package.
API dependencies¶
| Endpoint | Method | Called from | Source library | Reached via | Usage |
|---|---|---|---|---|---|
/{SqlConnectionEndpoint}/{server}/{instance}/{userName} (relative to DBConnectionClient:ServiceUrl) |
GET | ConnectionClient.GetSqlServerConnection → RetrieveConnectionString |
This library | — | Retrieves a formatted SQL Server connection string from the DBConnectionAPI. |
/{PostgreSqlConnectionEndpoint}/{instance}/{userName} (relative to DBConnectionClient:ServiceUrl) |
GET | ConnectionClient.GetPostgreSqlServerConnection → RetrieveConnectionString |
This library | — | Retrieves a formatted PostgreSQL connection string from the DBConnectionAPI; the server segment is not sent to the API. |
/{OracleConnectionEndpoint}/{instance}/{userName} (relative to DBConnectionClient:ServiceUrl) |
GET | ConnectionClient.GetOracleConnection → RetrieveConnectionString |
This library | — | Retrieves a formatted Oracle connection string from the DBConnectionAPI. |
All three calls are issued directly by ConnectionClient through the injected IHttpJsonClient.GetAsync(string) (ServiceContracts contract); the target DBConnectionAPI is an NTLM-authenticated external HTTP service and is not part of this repository.
Dependency risks and notes¶
IHttpJsonClientandIEnvironmentClientare consumed only as ServiceContracts interfaces; the library does not referenceSAIF.NetCore.HttpClientsorSAIF.NetCore.EnvironmentClientdirectly, so the concrete implementations and their behavior are determined entirely by what the consuming application registers*.IHttpJsonClientis documented as intended for transient use, but a singletonConnectionClientcaptures a single injected instance for the process lifetime, combined with stored NTLM credential state set viaSetupClientCredentials; confirm the registeredSAIF.NetCore.HttpClientsimplementation is safe for this usage pattern*.- The DBConnectionAPI service URL and the three endpoint path segments are resolved from environment configuration at runtime and are not present in this repository, so the exact external endpoints cannot be verified from source alone**.
Related documentation¶
- Index
- Overview
- Architecture
- Configuration
- Operations and processes
- Business rules
- Security and authorization
- 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¶
src/SAIF.NetCore.DbConnectionClient/SAIF.NetCore.DBConnectionClient/SAIF.NetCore.DBConnectionClient/SAIF.NetCore.DBConnectionClient.csprojsrc/SAIF.NetCore.DbConnectionClient/SAIF.NetCore.DBConnectionClient/SAIF.NetCore.DBConnectionClient/ConnectionClient.cssrc/SAIF.NetCore.ServiceContracts/SAIF.NetCore.ServiceContracts/SAIF.NetCore.ServiceContracts/IDBConnectionClient.cs,IHttpJsonClient.cs,IHttpRequestResult.cs,IEnvironmentClient.cs