All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jpaoletti.jpm.menu.Menu Maven / Gradle / Ivy

The newest version!
package jpaoletti.jpm.menu;

import jpaoletti.jpm.core.PMCoreObject;

/**Abstract class that represents a Menu in a generic form. The basic idea is that we can have a Menu
 * with submenus or a leaf menu, making this a recursive estructure. Any menu has a descriptive text, 
 * a parent menu (except for the root element) and a permission that indicates when a user can access
 * to this item. 
 * 
 * A menu is fully configured in a xml configuration file and it basic structure is something like:
 * 
 * 
 * {@code
 * 
 * 
 * 
 *     
 *             
 *             ...
 *             
 *     
 *     
 *     ...
 *     
 * 
 * }
 * 
* @author jpaoletti * */ public abstract class Menu extends PMCoreObject{ /**Descriptive text*/ private String text; /**Parent in menu tree. Only null in the root element*/ private MenuList parent; /**Permission needed to access to this item. It also hides any child */ private String permission; /** * @param parent the parent to set */ public void setParent(MenuList parent) { this.parent = parent; } /** * @return the parent */ public MenuList getParent() { return parent; } /** * @param text the text to set */ public void setText(String text) { this.text = text; } /** * @return the text */ public String getText() { return text; } /** * @param permission the permission to set */ public void setPermission(String permission) { this.permission = permission; } /** * @return the permission */ public String getPermission() { return permission; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy