/** * Returns the String representation of this permission set object.<p> * * @see java.lang.Object#toString() */ @Override public String toString() { return "[PermissionSet:] " + getPermissionString(); } }
/** * Converts an OpenCms access control entry to a list of CMIS permissions which represent native OpenCms permissions.<p> * * @param ace the access control entry * @return the list of permissions for the entry */ public static List<String> getNativePermissions(CmsAccessControlEntry ace) { List<String> result = getNativePermissions(ace.getPermissions().getAllowedPermissions(), false); result.addAll(getNativePermissions(ace.getPermissions().getDeniedPermissions(), true)); return result; }
} else if (requiresReadPermission()) { p.append("+r"); } else if (requiresWritePermission()) { p.append("+w"); } else if (requiresViewPermission()) { p.append("+v"); } else if (requiresControlPermission()) { p.append("+c"); } else if (requiresDirectPublishPermission()) { p.append("+d");
boolean writeRequired = requiredPermissions.requiresWritePermission() || requiredPermissions.requiresControlPermission(); requiredPermissions = new CmsPermissionSet( requiredPermissions.getAllowedPermissions() | CmsPermissionSet.PERMISSION_VIEW, requiredPermissions.getDeniedPermissions()); } else { if (requiredPermissions.requiresDirectPublishPermission()) { if ((requiredPermissions.getPermissions() & (permissions.getPermissions())) == requiredPermissions.getPermissions()) { result = I_CmsPermissionHandler.PERM_ALLOWED; } else { dbc.getRequestContext().removeSiteRoot(resource.getRootPath()), dbc.currentUser().getName(), requiredPermissions.getPermissionString(), permissions.getPermissionString()}));
if (!permissions.requiresWritePermission() || !permissions.requiresControlPermission()) {
Set<String> permissionKeys = CmsPermissionSet.getPermissionKeys(); int allowValue = 0; int denyValue = 0; value = CmsPermissionSet.getPermissionValue(key);
if (extendedView) { result.append(" (").append(entry.getPermissions().getPermissionString()).append(")"); int value = CmsPermissionSet.getPermissionValue(key); String keyMessage = key(key); result.append("<tr>\n");
cms, cms.readResource(checkViewableReferenceUri)); if (permissions.requiresControlPermission() && permissions.requiresViewPermission()) { resourceTypes.add(addType); creatableTypes.add(addType.getTypeName());
I_CmsResourceType type = OpenCms.getResourceManager().getResourceType(resource.getTypeId()); CmsExplorerTypeSettings settings = OpenCms.getWorkplaceManager().getExplorerTypeSetting(type.getTypeName()); hasView = (settings == null) || settings.getAccess().getPermissions(cms, resource).requiresViewPermission(); if (hasView && CmsResourceTypeXmlContent.isXmlContent(resource) false, CmsResourceFilter.IGNORE_EXPIRATION) && ((settings == null) || settings.getAccess().getPermissions(cms, resource).requiresWritePermission());
try { CmsExplorerTypeAccess access = explorerType.getAccess(); if (!access.getPermissions(cms, checkResource).requiresControlPermission()) { continue;
/** * Checks if a certain permission of a permission set is denied.<p> * * @param p the current CmsPermissionSet * @param value the int value of the permission to check * @return true if the permission is denied, otherwise false */ protected boolean isDenied(CmsPermissionSet p, int value) { if ((p.getDeniedPermissions() & value) > 0) { return true; } return false; }
/** * Checks if a certain permission of a permission set is allowed.<p> * * @param p the current CmsPermissionSet * @param value the int value of the permission to check * @return true if the permission is allowed, otherwise false */ protected boolean isAllowed(CmsPermissionSet p, int value) { if ((p.getAllowedPermissions() & value) > 0) { return true; } return false; }
/** * Converts an OpenCms ACE to a list of basic CMIS permissions.<p> * * @param ace the access control entry * * @return the list of permissions */ public static List<String> getCmisPermissions(CmsAccessControlEntry ace) { int permissionBits = ace.getPermissions().getPermissions(); List<String> result = new ArrayList<String>(); if (0 != (permissionBits & CmsPermissionSet.PERMISSION_READ)) { result.add(A_CmsCmisRepository.CMIS_READ); } if (0 != (permissionBits & CmsPermissionSet.PERMISSION_WRITE)) { result.add(A_CmsCmisRepository.CMIS_WRITE); } int all = CmsPermissionSet.PERMISSION_WRITE | CmsPermissionSet.PERMISSION_READ | CmsPermissionSet.PERMISSION_CONTROL | CmsPermissionSet.PERMISSION_DIRECT_PUBLISH; if ((permissionBits & all) == all) { result.add(A_CmsCmisRepository.CMIS_ALL); } return result; }
/** * Checks if the current user has write permissions on the given resource.<p> * * @param cms the current cms context * @param resource the resource to check * * @return <code>true</code> if the current user has write permissions on the given resource */ public boolean isEditable(CmsObject cms, CmsResource resource) { // determine if this resource type is editable for the current user CmsPermissionSet permissions = getAccess().getPermissions(cms, resource); return permissions.requiresWritePermission(); }
/** * Returns the message keys of each permission known in the system.<p> * * @return Enumeration of message keys */ public static Set<String> getPermissionKeys() { return permissions().keySet(); }
boolean writeRequired = requiredPermissions.requiresWritePermission() || requiredPermissions.requiresControlPermission(); requiredPermissions = new CmsPermissionSet(requiredPermissions.getAllowedPermissions() | CmsPermissionSet.PERMISSION_VIEW, requiredPermissions.getDeniedPermissions()); } else { if (requiredPermissions.requiresDirectPublishPermission()) { if ((requiredPermissions.getPermissions() & (permissions.getPermissions())) == requiredPermissions.getPermissions()) { result = I_CmsPermissionHandler.PERM_ALLOWED; } else { dbc.getRequestContext().removeSiteRoot(resource.getRootPath()), dbc.currentUser().getName(), requiredPermissions.getPermissionString(), permissions.getPermissionString()}));
if (!permissions.requiresWritePermission() || !permissions.requiresControlPermission()) {
Set permissionKeys = CmsPermissionSet.getPermissionKeys(); int allowValue = 0; int denyValue = 0; value = CmsPermissionSet.getPermissionValue(key);
if (extendedView) { result.append(" (").append(entry.getPermissions().getPermissionString()).append(")"); int value = CmsPermissionSet.getPermissionValue(key); String keyMessage = key(key); result.append("<tr>\n");
|| !settings.getAccess().getPermissions(getCms(), resource).requiresControlPermission()) {