[uml] IMenuItemSet

Webel module:

Package/Namespace: 

UML element type:

OOE stereotypes:

Relationships (inverse)
UML Diagram
Click on the UML diagram to view it in a lightbox image viewer. You may then zoom in (or just open the image in a new web browser tab using the Download Original link to view large diagrams).

UML diagram type:

UML modelling domain:

This diagram includes some additional explanations regarding the relationships in the Webel «!analysis» @Interface and «!wrapper» @Component modeling system.

One wouldn't normally show and discuss so much concerning Components on an Interface diagram, usually it's just enough to show one concrete or abstract implementor @Component for each @Interface, and the matching design Class for the reverse engineered PHP Interface.

Every analysis @Interface class diagram should (be able to) show a "rectangle" formed by an analysis @Interface/@Component pair and the design Interface/Class pair, with Generalizations on the sides, and with the «!Trace» relationship top and the «!encapsulated by» ComponentRealization at the bottom.

Code examples

Adapted from OoeBridge:

  /**
   * Delegate for hook_menu().
   * 
   * Instead of using structured arrays directly, 
   * it uses implementations of OOE's IMenuItem collected
   * in an IMenuItemSet, which builds the hook_menu arrays.
   * ...
   */
  public function menu() {
 
    $menuItemSet = $this->factory()->newMenuItemSet();
 
    // ... 
 
    // 
    // The welcome page 
    //
    $pageController = new OoePageController();
    $menuItemWelcome = $this->factory()->newPageMenuItem(
            $pageController,
            MODULE,
            MODULE_NAME . ': Demonstrations welcome page',
            MODULE
    );
    $menuItemWelcome->forceAccessCallbackTRUE();
    $menuItemWelcome->setExpanded(true); //!
    $menuItemSet->addMenuItem($menuItemWelcome);
 
   // ... add other menu items ...
 
    return $menuItemSet->get();
}
Notes (policies)