PolicyAppManager¶
PolicyAppManager is the application-layer entry point for policy retrieval in this library. Consuming applications inherit from it to obtain a managed policy context, delegated policy authorization, Business Online access metadata, and the policy-header settings and data-provider surfaces used by downstream UI or workflow code.
Purpose¶
- Own the lifecycle of the active policy context, including portal setup, policy-data retrieval, and authorization outcome management.
- Expose lower-layer policy, agency, and header collaborators through a single orchestrating API surface.
- Provide overridable factory points so consuming applications can customize policy-header or policy-data behavior without rewriting the orchestration flow.
Context¶
- Namespace:
SAIF.Application.Policy - Assembly/package:
SAIF.Application.Policy
Public members¶
| Member | Signature | Purpose |
|---|---|---|
Security |
ReadOnly Property Security() As clsPolicySecurity |
Returns the local role-classification service for the current principal. |
UserCanAccessPolicy |
ReadOnly Property UserCanAccessPolicy() As Boolean |
Gates per-policy authorization for Retrieve/OnRetrieve: delegates to SAIF.Business.View.Policy.clsPolicySecurity.IsPolicyValidForUser for web requests, but grants access unconditionally when HttpContext.Current Is Nothing (BR-106). |
PolicyNumber |
Property PolicyNumber() As Decimal |
Selects which policy the manager establishes context for; changing it (protected setter) invalidates the cached PolicyData so the next read re-retrieves the aggregate for the new number (BR-104). |
IsCombinationTotalsSelected |
Property IsCombinationTotalsSelected() As Boolean |
Carries the caller's totals-selection preference into the header-settings flow. |
Policy |
ReadOnly Property Policy As clsPolicy |
Backing policy aggregate (SAIF.Business.Policy.Core.clsPolicy) that downstream header, association, and financial computations read for the currently authorized policy context. |
PolicyData |
ReadOnly Property PolicyData() As clsPolicyData |
View-layer aggregate whose validity gates OnRetrieve's "policy not found" outcome (BR-105); cached per policy number and re-retrieved with the manager's user access level whenever the number changes or ReLoadPolicyData is called (BR-104). |
ReLoadPolicyData |
Sub ReLoadPolicyData() |
Forces a fresh policy-data retrieval for the current policy number. |
DepositOnHand |
ReadOnly Property DepositOnHand As Decimal |
Delegates to SAIF.Business.Policy.Premium.Billing.clsFinancialTransactionCollection.GetTotalDepositOnHand to surface the policy's aggregated deposit-on-hand total. |
HasBusinessOnlineAccess |
ReadOnly Property HasBusinessOnlineAccess() As Boolean |
Reports whether the policy has Business Online access through external accounts. |
LastLoginDate |
ReadOnly Property LastLoginDate() As Date |
Exposes the latest external Business Online logon date found for the policy. |
BOAccessText |
ReadOnly Property BOAccessText() As String |
Renders the internal-only Business Online access text for the current policy. |
UserType |
ReadOnly Property UserType() As clsUserType |
Exposes the cached SAIF user-type classification for the current principal. |
UserAccessLevel |
ReadOnly Property UserAccessLevel() As clsPolicyData.UserAccessLevels |
Exposes the delegated view-layer access-level value used during policy-data retrieval. |
DPI |
ReadOnly Property DPI() As SAIF.Framework.IDataPortalInfo |
Oracle data portal (DataLayer.DPI("Policy")) established in OnCreateDataLayer/OnInitialize under the fixed GEN database account (BR-101); every downstream policy, header, and association retrieval call uses this portal. |
SelectedAssociationType |
Property SelectedAssociationType As IPolicyAssociationType |
Carries the current header association-type selection between manager and settings/provider layers. |
PolicyHeaderSettings |
ReadOnly Property PolicyHeaderSettings As IPolicyHeaderSettings |
Returns the header-settings object governing visibility, selection, and diagnostic flags. |
PolicyHeaderDataProvider |
ReadOnly Property PolicyHeaderDataProvider As IPolicyHeaderDataProvider |
Returns the provider that composes the rendered policy-header payload. |
Behavioral notes¶
- The class is read-only from the caller's perspective because the write path always returns false.
- Authorization is split between local role classification and delegated per-policy authorization.
Constraints and usage notes¶
- Concrete applications consume this type through inheritance rather than direct instantiation.
Sources¶
Application\SAIF.Application.Policy\PolicyAppManager.vb