@Nonnull public IMenuItemPage createItem (@Nonnull final String sParentID, @Nonnull final String sItemID, @Nonnull final IPage aPage) { final DefaultTreeItemWithID <String, IMenuObject> aParentItem = getItemWithID (sParentID); if (aParentItem == null) throw new IllegalArgumentException ("No such parent menu item '" + sParentID + "'"); return internalCreateChildItem (aParentItem, new MenuItemPage (sItemID, aPage)); }
@Nonnull public IMenuItemPage createRootItem (@Nonnull final String sItemID, @Nonnull final IPage aPage) { return internalCreateChildItem (getRootItem (), new MenuItemPage (sItemID, aPage)); }
@Nullable public IMenuItemPage replaceMenuItem (@Nonnull final IPage aNewPage) { ValueEnforcer.notNull (aNewPage, "NewPage"); final String sID = aNewPage.getID (); final DefaultTreeItemWithID <String, IMenuObject> aItem = getItemWithID (sID); if (aItem == null) return null; final IMenuItemPage ret = new MenuItemPage (sID, aNewPage); aItem.setData (ret); return ret; }