Skip to content

SAIF.Business.View.Policy dependencies

Internal dependencies

Dependency Reference Type Usage
SAIF.Business.Policy Project Reference Supplies IPolicyAssociationType, IPolicyHeaderAssociation, PolicyAssociationTypeCategories, and StandardAssociationTypes, consumed by the Associations\ sub-folder and clsPolicyData for policy-to-policy association resolution.
SAIF.Business.Utilities Project Reference Supplies clsAddress (base class of clsPolicyAddress), clsPhone, clsName, clsSmartString/clsSmartDecimal/clsSmartDate, clsCodeCollection, and formatting helpers (StandardFormats) used across nearly every class in this library.

External dependencies

Dependency Version Usage
SAIF.BOF.Framework (Bindable, Connection, Core, DNS, Logging, Mail, Security, Security.EnvironmentApi) 2.0.22279.1 Supplies the BOF runtime base types (clsBusinessBase, clsBusinessCollectionBase, clsBusinessCollection(Of T), IBusinessCriteria, IDataPortalInfo, IPortalRequest, IDataRequest, clsSAIFDataReader, clsResultSet, clsSecurityPrincipal, AppGlobal.EnvironmentService) that every business object and clsPolicySecurity derive from or consume.
SAIF.BOF.Business (package name SAIF.Business) 2.1.23088.1 Supplies clsConstants (including Messages.InvalidSQLProperty, DataMaskingConstants.*) and clsUserType, used for read-only SQL suppression messaging and per-user-type authorization logic.
SAIF.Framework.Common not specified in analysis** General framework extension-method helpers (ToIn, ToYesNoString) used in inline SQL/string construction.
Oracle.ManagedDataAccess 21.5.0 Oracle ADO.NET provider; confirms Oracle as the primary database for nearly all policy-view retrieval.
SAIF.HashUtil, SAIF.ResourceFiles, SAIF.Web.API.Clients, SAIF.Web.API.Core not specified in analysis** Referenced at the assembly level in the .vbproj; no direct usage found in scanned source — likely transitive requirements of the referenced BOF/Business packages.*
Autofac, FluentValidation, ImagingAPI.Client/Core, iTextSharp, log4net, Microsoft.Bcl.AsyncInterfaces, Newtonsoft.Json, PdfAPI.Client/Core, RestSharp, System.Net.Http.Formatting, System.Web.Http* not specified in analysis** Referenced at the assembly level per the .vbproj; no direct usage found in the scanned .vb source — appear to be inherited/transitive references from the BOF framework packages rather than in-library dependencies.*
BankValidator not specified in analysis** Referenced at the assembly level; no usage found in scanned source.**

Transitive dependencies

Dependencies in this section are inherited from dependency framework libraries. They are not directly referenced by this library but are required at runtime through framework packages.

Dependency Source framework Type Usage
clsRulesManager SAIF.Framework.Core Transitive Owned internally by clsBusinessBase†-derived objects (clsPolicyData, clsPolicyAddress, etc.) for rule registration/enforcement (Rules.CheckRules("RuleName")) and broken-rule tracking surfaced via IDataErrorInfo.†
clsDataPortalInfo / IDataPortalInfo SAIF.Framework.Core Transitive Underlies the IDataPortalInfo instances (DPI, DPISql) passed to and constructed by this library's objects to dispatch create/retrieve/data-portal requests.†
clsBusinessCriteriaBase / clsRetrieveOnlyBusinessCriteria SAIF.Framework.Core Transitive Base retrieval-only criteria pattern inherited by this library's 16 IBusinessCriteria implementations, which all return empty/throw on mutating SQL properties consistent with clsRetrieveOnlyBusinessCriteria's enforced read-only contract.†
RestSharp SAIF.Framework.Core Transitive Used internally by the framework's API-backed criteria model (clsBusinessApiCriteriaBase) even though this library's objects are SQL-backed rather than API-backed.†

Dependency risks and notes

  • The primary IDataPortalInfo (DPI) consumed by most objects in this library is injected by the caller; its underlying database engine cannot be confirmed from within this library, though observed Oracle-only stored-procedure/bind-variable usage in clsPolicySecurity.CanAuditorAccessPolicy is consistent with an Oracle-backed DPI.*
  • clsSQLDataLayer, used by clsPolicySecurity to construct the secondary SQL Server BDS connection, is not defined in this library or its project references — it is supplied by a referenced SAIF internal NuGet package (most likely SAIF.BOF.Framework.Connection or SAIF.Business), so its internal configuration surface beyond the three passed-in parameters (BDS_USER, bdsDatabase, BDS_DATABASENAME) could not be verified from this library's source.**
  • Several externally-referenced packages (SAIF.HashUtil, SAIF.ResourceFiles, SAIF.Web.API.*, Autofac, FluentValidation, ImagingAPI.*, iTextSharp, PdfAPI.*) show no direct usage in scanned source and are most likely transitive requirements of the BOF framework packages rather than dependencies this library relies on directly; treat with caution when assessing upgrade impact.*
  • A secondary, non-primary database dependency (SQL Server BDS) exists solely to support authorization lookups in clsPolicySecurity; any change to BDS_USER/bdsDatabase/ BDS_DATABASENAME Environment API keys or to the cp_* stored procedures directly impacts Group/Agent/LossControl authorization paths without affecting the Oracle-backed policy-view retrieval paths.

Note: Statements marked with † are derived from dependency library documentation via the Legends CLI. Statements marked with * were inferred from code structure or contextual evidence. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Business.View.Policy\SAIF.Business.View.Policy.vbproj
  • SAIF.Business.View.Policy\clsPolicySecurity.vb
  • SAIF.Business.View.Policy\clsPolicyData.vb