@Named @SessionScoped
public class Menu3Bean implements JeeslMenuBean<SecurityView,SecurityContext,SecurityMenu>
{
final static Logger logger = LoggerFactory.getLogger(Menu3Bean.class);
private static final long serialVersionUID = 1L;
@EJB private JeeUtilsFacade fUtils;
@Inject AppMenuBeans bMenus;
@Inject AppSecurityBean bSecurity;
@Inject SessionTenantBean bTenant;
private JeeslMenuHandler<SecurityView,SecurityContext,SecurityMenu,JeeUser,JeeIdentity> handler;
public Menu3Bean()
{
handler = new JeeslMenuHandler<>();
}
@PostConstruct
public void init()
{
logger.info(JeeLogMessage.postConstruct());
handler.postConstructMenu(bSecurity,JeeslIdentityFactory.instance(JeeFactoryProvider.security(),JeeIdentity.class).build(bTenant.getContext()));
bMenus.add(this);
}
@PreDestroy
public void destroy()
{
bMenus.remove(this);
}
public void clear()
{
handler.reset();
// cacheSub.clear();
// cacheBreadcrumb.clear();
}
// @Override public List<SecurityMenu> getMainMenu() {return handler.getMainMenu();}
// @Override public List<SecurityMenu> subMenu(String viewCode) {return handler.subMenu(cacheSub,viewCode);}
// @Override public List<SecurityMenu> breadcrumb(String viewCode) {return handler.breadcrumb(cacheBreadcrumb,viewCode);}
public void prepare(JeeIdentity identity) {handler.prepare(identity);}
@Override public List<SecurityMenu> getMainMenu() {return handler.getMainMenu();}
@Override public List<SecurityMenu> subMenu(String viewCode) {return handler.subMenu(bMenus,viewCode);}
@Override public List<SecurityMenu> breadcrumb(String viewCode) {return handler.breadcrumb(bMenus,viewCode);}
}