SAIF.Business.Menu overview¶
Documentation context: Packaged Component (NuGet)
SAIF.Business.Menu is a component-tier BOF (Business Object Framework) class library that models the application's dynamic navigation menu system. It provides business objects for menu items, pages, categories, per-user favorites, and menu-level access grouping, consumed by front-end applications to render authorized navigation menus against an Oracle database.
Purpose¶
- Provide BOF business objects for all aspects of the application navigation menu: items, pages, categories, favorites, and security-group associations.
- Enable front-end and presentation-layer consumers to retrieve, persist, and manage menu metadata through a standard BOF data-portal pattern.
Responsibilities¶
- Build and structure the hierarchical menu tree (items grouped by page and category) presented to users.
- Classify menu items by category via
clsMenuCategoryCode. - Manage per-user favorite menu-item bookmarks via
clsMenuFavorite/clsMenuFavoriteCollection. - Record menu-authorization data: which security group or individual user maps to which menu item (
clsMenuSecurity/clsMenuSecurityUser). - Scope menu structures by application via
clsApplicationCode. - Expose per-user authorized menu-item projections through
clsMenuAuthorizedItemCollection.
Key components¶
clsApplicationCode/clsApplicationCodeCollection: code-table entity for application identifiers that scope menu pages.clsMenuItem/clsMenuItemCollection: core menu-item entity (menu tree node) and its collection.clsMenuPage/clsMenuPageCollection: page-level grouping of menu items with toolbar-button configuration flags.clsMenuCategoryCode/clsMenuCategoryCodeCollection: code-table for menu item categories.clsMenuFavorite/clsMenuFavoriteCollection: per-user favorite menu-item bookmarks.clsMenuAuthorizedItem/clsMenuAuthorizedItemCollection: projects the set of menu items a user is authorized to see, including favorite indicators and unsecured items.clsMenuSecurity/clsMenuSecurityCollection: associates a menu item with aSecurityGroupstring tag.clsMenuSecurityUser/clsMenuSecurityUserCollection: associates individual users with a security-group record.mdlUtilities: shared helper module for the library.
Related documentation¶
- Index
- Architecture
- Dependencies
- Operations and processes
- Business rules
- Database tables
- SQL catalog
- API reference
Sources¶
Business\SAIF.Business.Menu\SAIF.BOF.Business.Menu.vbprojBusiness\SAIF.Business.Menu\SAIF.BOF.Business.Menu.nuspecBusiness\SAIF.Business.Menu\clsApplicationCode.vbBusiness\SAIF.Business.Menu\clsMenuItem.vbBusiness\SAIF.Business.Menu\clsMenuPage.vbBusiness\SAIF.Business.Menu\clsMenuFavorite.vbBusiness\SAIF.Business.Menu\clsMenuSecurity.vbBusiness\SAIF.Business.Menu\clsMenuSecurityUser.vbBusiness\SAIF.Business.Menu\clsMenuAuthorizedItem.vbBusiness\SAIF.Business.Menu\mdlUtilities.vb