Skip to content

SAIF.Business.Menu overview

Documentation context: Packaged Component (NuGet)

SAIF.Business.Menu is the shared business-layer component that models menu pages, menu items, favorites, security-group assignments, and user-to-group memberships for the legacy SAIF presentation stack. Its primary responsibility is to return the authorized navigation menu for a caller by combining menu structure, security-group membership, public items, and favorites into a single read model.

Purpose

  • Provide the persisted menu definition used by presentation callers to render navigation.
  • Compute each user's authorized menu from MENU_ITEM, MENU_SECURITY, MENU_SECURITY_USER, and MENU_FAVORITE.
  • Support maintenance of lookup data, pages, items, favorites, and security-group assignments without owning any HTTP or UI concerns.

Responsibilities

  • Persist application-code and category reference data.
  • Persist page definitions and menu items, including per-page flags and tooltips.
  • Persist menu-item security-group assignments and user-to-group memberships.
  • Return authorized menu projections and filtered views such as favorites and secured items.

Key components

  • clsMenuAuthorizedItemCollection: builds the authorized menu.
  • clsMenuItem and clsMenuSecurityCollection: maintain items and their security groups.
  • clsMenuFavorite: stores per-user favorites and order.
  • clsMenuPage, clsApplicationCode, and clsMenuCategoryCode: supply lookup and page metadata.
  • clsMenuSecurityUser: stores user-to-group memberships.

Sources

  • SAIF.Business.Menu\clsMenuAuthorizedItemCollection.vb
  • SAIF.Business.Menu\clsMenuItem.vb
  • SAIF.Business.Menu\clsMenuFavorite.vb
  • SAIF.Business.Menu\clsMenuPage.vb
  • SAIF.Business.Menu\\SAIF.Business.Menu.vbproj
  • SAIF.BOF.Presentation.Web.Infragistics103.nuspec