Skip to content

SAIF.Application overview

Documentation context: Front-End Application Component Documented via: Legal (Legal\Legal.vbproj)

SAIF.Application is the base Application-tier abstraction layer of the SAIF BOF stack. It sits between the BOF Framework (SAIF.BOF.Framework) and concrete per-domain Application managers (e.g., SAIF.Application.Claim, SAIF.Application.Claim.Legal), defining the shared contract and plumbing that every concrete "AppManager" class in the solution must implement.*

Purpose

  • Define the abstract application-manager lifecycle contract, security-role state, context-set tracking, and message-accumulation facility shared by every concrete Application-tier manager in the solution.
  • Bootstrap and register named SQL Server and/or Oracle data portals for use by concrete business/application objects, without authoring or executing any SQL itself.
  • Provide a caching authorization contract over caller-supplied AD resource names, delegating the actual authorization decision to the framework's security principal.
  • Provide a lighter-weight, non-clsBusinessBase service-manager base and service-oriented result contract for WCF/service-style application managers.

Responsibilities

  • Orchestrate the abstract lifecycle (Initialize → OnInitialize → OnCreateDataLayer; OnCheckSecurity; OnTransactionStart/OnWrite/OnTransactionStop; OnRetrieve) that every concrete AppManagerBase subclass must implement.
  • Manage per-instance AD-resource authorization caching via UserAccess.
  • Bootstrap named data portals via ApplicationDataAccess.
  • Provide cross-cutting message-formatting utilities (MessageFormatting) for Windows- and Web-style display of accumulated messages.

Key components

  • AppManagerBase: abstract application-manager lifecycle contract, security-role state, and message accumulation.
  • ApplicationDataAccess: data-portal bootstrap and registry (SQL Server / Oracle).
  • UserAccess: AD resource authorization caching contract.
  • clsServiceAppManagerBase: lightweight service-style application-manager base.
  • MessageFormatting: static utility for concatenating message lists for display.
  • AppConstants: minimal shared-constants holder.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • SAIF.Application\AppManagerBase.vb
  • SAIF.Application\ApplicationDataAccess.vb
  • SAIF.Application\UserAccess.vb
  • SAIF.Application\clsServiceAppManagerBase.vb
  • SAIF.Application\MessageFormatting.vb
  • SAIF.Application\AppConstants.vb
  • SAIF.Application\SAIF.Application.vbproj