/** * @since 7.4 */ public List<SelectItem> getUserVisiblePermissionSelectItems(String documentType) { List<UserVisiblePermission> userVisiblePermissions = getVisibleUserPermissions(documentType); List<String> permissions = new ArrayList<>(); for (UserVisiblePermission userVisiblePermission : userVisiblePermissions) { permissions.add(userVisiblePermission.getId()); } return asSelectItems(permissions.toArray(new String[permissions.size()])); }
public List<UserVisiblePermission> getSortedUIPermissionDescriptor() { Collections.sort(items, new PermissionUIItemComparator()); List<UserVisiblePermission> result = new ArrayList<UserVisiblePermission>(); for (PermissionUIItemDescriptor pid : items) { if (pid.isShown()) { result.add(new UserVisiblePermission(pid.getId(), pid.getPermission(), pid.getDenyPermission())); } } return result; }
if (uvps != null) { for (UserVisiblePermission uvp : uvps) { if (uvp.getId().equals(permissionName)) { grantPerm = uvp.getPermission(); denyPerm = uvp.getDenyPermission(); break;
@Override public void write(JsonGenerator jg, DocumentModel document) throws IOException { PermissionProvider permissionProvider = Framework.getService(PermissionProvider.class); List<UserVisiblePermission> userVisiblePermissions = permissionProvider.getUserVisiblePermissionDescriptors(document.getType()); jg.writeArrayFieldStart(NAME); for (UserVisiblePermission permission : userVisiblePermissions) { jg.writeString(permission.getId()); } jg.writeEndArray(); }
@Override public List<SelectItem> getSettablePermissions() { String documentType = navigationContext.getCurrentDocument().getType(); // BBB: use the platform service if it defines permissions (deprecated) UIPermissionService service = (UIPermissionService) Framework.getRuntime().getComponent( UIPermissionService.NAME); String[] settablePermissions = service.getUIPermissions(documentType); if (settablePermissions == null || settablePermissions.length == 0) { // new centralized permission provider at the core level List<UserVisiblePermission> visiblePerms = getVisibleUserPermissions(documentType); settablePermissions = new String[visiblePerms.size()]; int idx = 0; for (UserVisiblePermission uvp : visiblePerms) { settablePermissions[idx] = uvp.getId(); idx++; } } return asSelectItems(settablePermissions); }