@Override public boolean isScreenPermitted(String windowAlias) { return userSessionSource.getUserSession().isScreenPermitted(windowAlias); }
protected boolean permittedNode(Node<BasicPermissionTarget> node) { return userSession.isScreenPermitted(node.getData().getPermissionValue()); }
public boolean isPermitted(UserSession session) { if (StringUtils.isEmpty(id) || isSeparator()) { return true; } else { boolean screenPermitted = session.isScreenPermitted(id); if (screenPermitted) { Element permissionsElem = descriptor.element("permissions"); if (permissionsElem != null) { for (Element element : Dom4j.elements(permissionsElem, "permission")) { PermissionType type = PermissionType.valueOf(element.attributeValue("type")); String target = element.attributeValue("target"); screenPermitted = session.isPermitted(type, target); if (!screenPermitted) break; } } } return screenPermitted; } }
@Nullable public WindowInfo getDefaultBrowseScreen(MetaClass metaClass) { WindowInfo browseWindow = windowConfig.findWindowInfo(windowConfig.getBrowseScreenId(metaClass)); if (browseWindow != null && userSessionSource.getUserSession().isScreenPermitted(browseWindow.getId())) { return browseWindow; } WindowInfo lookupWindow = windowConfig.findWindowInfo(windowConfig.getLookupScreenId(metaClass)); if (lookupWindow != null && userSessionSource.getUserSession().isScreenPermitted(lookupWindow.getId())) { return lookupWindow; } return null; }