SAIF.Services.Web.Proxies dependencies¶
SAIF.Services.Web.Proxies has a single same-repo project reference (SAIF.SAIFCode.Core, for its contract DTOs), two directly-used SAIF framework NuGet packages, several packages.config entries with no authored usage, and 12 consumed SOAP/REST services reached only through generated clients and one hand-rolled Google Maps REST client; it is consumed in-repo by SAIF.Services, SAIF.Services.Common, and SAIF.Services.WCF.
Internal dependencies¶
| Dependency | Reference Type | Usage |
|---|---|---|
| SAIF.SAIFCode.Core | Project Reference | Supplies the SAIF.Core contract DTOs mapped by every wrapper (SAIF.Core.Contracts Contact, Address, PhoneNumber, PersonName, ApplicationExceptionDetail; SAIF.Core.Contracts.CertifiedLabel; SAIF.Core.Contracts.Core.DistanceResults; SAIF.Core.Contracts.Documents.FaxInfoClass; SAIF.Core.Services.Documents types; the PlexMode, ScaleMode, and PaperTray enums) |
| SAIF.Framework.Core | NuGet Package | Provides IEnvironmentService and ILogService (namespace SAIF.Core.Services) and the Enforce argument-guard helper, used across every wrapper's construction and method guards* |
| SAIF.Framework.Common | NuGet Package | Provides SAIF.Common.Extensions (IsNullOrEmpty, Truncate, IsNull), used to truncate SimpleCertifiedMail label fields* |
| SAIF.Web.API.Clients | NuGet Package | Referenced in packages.config; no authored usage found (no JsonHttpClient/ClientInfo in this library) |
| SAIF.HashUtil | NuGet Package | Referenced in packages.config; no authored usage found |
External dependencies¶
| Dependency | Version | Usage |
|---|---|---|
| Autofac | 3.5.2 | Referenced in packages.config; no authored usage found (no ContainerBuilder registrations in this library) |
| FluentValidation | 5.5.0.0 | Referenced in packages.config; no authored usage found |
| log4net | 2.0.5 | Referenced in packages.config; no authored usage found |
| Newtonsoft.Json | 8.0.3 | Referenced in packages.config; no authored usage found |
| RestSharp | 106.12.0 | Referenced in packages.config; no authored usage found |
Two third-party binaries are referenced by HintPath rather than NuGet: Libs/ThirdParty/CallRex/CallRex.Utilities.dll and CallrexAPIUtilities.dll. No authored usage of either was found.
Consumed SOAP client proxies. This library hosts 11 of the 12 SOAP/WCF client proxies consumed by SAIF and its hosts (the 12th, CleanAddressSvc, is hosted in SAIF.Services as a web reference). Each is documented separately, outside this dependency page, at docs/clients/<proxy-slug>/:
| Proxy | Slug | Generated client |
|---|---|---|
| ActiveDirectory | activedirectory |
clsADServicesSoapClient (internal), wrapped by ActiveDirectoryServiceProxy |
| CallRex | callrex |
ClientServiceClient / ClientAccessPolicyClient (public); no authored wrapper |
| CallRexState | callrexstate |
AgentStateServiceClient (duplex, public) / ClientAccessPolicyClient (public); no authored wrapper |
| DbConnection | dbconnection |
ConnectInfoSoapClient (internal), wrapped by Legacy.DbConnectionServiceProxy |
| Document | document |
clsGenerateSoapClient (internal), wrapped by DocumentServiceProxy |
| Fax | fax |
FaxServiceSoapClient (internal), wrapped by FaxServiceProxy |
| Logging | logging |
clsWSLoggingSoapClient (internal), wrapped by LoggingServiceProxy |
| PDFService | pdfservice |
PDFServiceClient (internal), wrapped by PdfServiceProxy |
| SimpleCertifiedMail | simplecertifiedmail |
ADSAPISoapClient (public), wrapped by SimpleCertifiedMailServiceProxy |
| SMTP | smtp |
clsSAIFMessageSoapClient (internal); no authored wrapper, unreachable |
| WorkCalendar | workcalendar |
SAIFDatesSoapClient (internal), wrapped by WorkCalendarServiceProxy |
| CleanAddressSvc | cleanaddresssvc |
Hosted in SAIF.Services, not in this library |
The Google Distance Matrix API is consumed directly by GoogleMapsApiServiceProxy as a hand-rolled REST/XML client over System.Net.WebRequest; it has no generated service reference and is not one of the 12 catalogued SOAP client proxies.
Dependency risks and notes¶
- No composition root for injected proxies. No Autofac registration for
ISimpleCertifiedMailServiceProxyorIGoogleMapsApiServiceProxyexists anywhere in this repository; the host that wires them for SAIF.Services consumers is external**. - Unused packages and binaries.
SAIF.Web.API.Clients,SAIF.HashUtil,Autofac,FluentValidation,log4net,Newtonsoft.Json,RestSharp, and the CallRex third-party DLLs have no authored usage; it is unknown whether they are required transitively (for example, by generated proxy code) or are stale**. - Non-secure secret retrieval.
SimpleCertifiedMailService.Password,SimpleCertifiedMailService.PartnerKey, andgooglemaps.apikeyare read withIEnvironmentService.GetConfigSettingrather thanGetSecureConfigSetting(see Configuration). - Unreachable generated clients exposed publicly.
CallRex.ClientServiceClient,CallRex.ClientAccessPolicyClient,CallRexState.AgentStateServiceClient, andCallRexState.ClientAccessPolicyClientarepublicin the packaged assembly even though no in-repository code constructs them. - Plain-HTTP transport of database credentials.
Legacy.DbConnectionServiceProxyrequests and receives Oracle/SQL Server connection strings, which contain credentials, over a default unsecuredBasicHttpBinding; whether the transport is HTTPS depends only on the caller-supplied URL scheme. - Consumers. In-repository
<ProjectReference>consumers areServices/SAIF.Services/SAIF.Services.csproj(line 503),Services/SAIF.Services.Common/SAIF.Services.Common.csproj(line 95),Services/SAIF.Services.WCF/SAIF.Services.WCF.csproj(line 142), andTests/SAIF.Services.Tests/SAIF.Services.Tests.csproj(line 360);Services/SAIF.Services.WebApi/EnvironmentApi/EnvironmentApi.csprojandDependencyMaps/SAIF.DependencyMaps.Web.DocCenterApiconsume the packaged binary viaHintPath, andWeb/SAIF.Web.Mvcconsumes it through the packagedSAIF.SAIFCode.Core.2.0.22164.1NuGet package.
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
- Overview
- Architecture
- Configuration
- Operations and processes
- Business rules
- API reference
- ActiveDirectory client
- CallRex client
- CallRexState client
- CleanAddressSvc client
- DbConnection client
- Document client
- Fax client
- Logging client
- PDFService client
- SimpleCertifiedMail client
- SMTP client
- WorkCalendar client
Sources¶
Services/SAIF.Services.Web.Proxies/SAIF.Services.Web.Proxies.csprojServices/SAIF.Services.Web.Proxies/packages.configServices/SAIF.Services.Web.Proxies/app.configServices/SAIF.Services/SAIF.Services.csprojServices/SAIF.Services.Common/SAIF.Services.Common.csprojServices/SAIF.Services.WCF/SAIF.Services.WCF.csprojTests/SAIF.Services.Tests/SAIF.Services.Tests.csprojServices/SAIF.Services.WebApi/EnvironmentApi/EnvironmentApi.csprojDependencyMaps/SAIF.DependencyMaps.Web.DocCenterApiWeb/SAIF.Web.Mvc/SAIF.SAIFCode.Web.Mvc.csproj