describeLayout(), describeSObjects(), query(), retrieve()
Field Name | Details |
---|---|
CustomPermissionId |
|
RequiredCustomPermissionId |
|
public class CustomPermissionUtil { public String[] getAllRequiredCustomPermissions(String customPermId) { return getAllRequiredHelper(new String[]{customPermId}); } private String[] getAllRequiredHelper(String[] customPermIds) { CustomPermissionDependency[] requiredPerms = [SELECT RequiredCustomPermissionId FROM CustomPermissionDependency WHERE CustomPermissionId IN :customPermIds]; String[] requiredPermIds = new String[]{}; for (CustomPermissionDependency cpd : requiredPerms) { requiredPermIds.add(cpd.RequiredCustomPermissionId); } if (requiredPermIds.size() > 0) { customPermIds.addall(getAllRequiredHelper(requiredPermIds)); return customPermIds; } else { return customPermIds; } } }