001
014
015 package com.liferay.portal.security.permission;
016
017 import com.liferay.registry.collections.ServiceTrackerCollections;
018 import com.liferay.registry.collections.ServiceTrackerMap;
019
020
023 public class ResourcePermissionCheckerUtil {
024
025 public static Boolean containsResourcePermission(
026 PermissionChecker permissionChecker, String className, long classPK,
027 String actionId) {
028
029 ResourcePermissionChecker resourcePermissionChecker =
030 _serviceTrackerMap.getService(className);
031
032 if (resourcePermissionChecker == null) {
033 return null;
034 }
035
036 Boolean resource = resourcePermissionChecker.checkResource(
037 permissionChecker, classPK, actionId);
038
039 if (resource != null) {
040 return resource.booleanValue();
041 }
042
043 return null;
044 }
045
046 private static final ServiceTrackerMap<String, ResourcePermissionChecker>
047 _serviceTrackerMap = ServiceTrackerCollections.openSingleValueMap(
048 ResourcePermissionChecker.class, "resource.name");
049
050 }