001
014
015 package com.liferay.portal.kernel.security.permission;
016
017 import com.liferay.portal.kernel.model.User;
018 import com.liferay.portal.kernel.security.pacl.permission.PortalRuntimePermission;
019 import com.liferay.registry.Registry;
020 import com.liferay.registry.RegistryUtil;
021 import com.liferay.registry.ServiceTracker;
022
023
027 public class PermissionCheckerFactoryUtil {
028
029 public static PermissionChecker create(User user) throws Exception {
030 return getPermissionCheckerFactory().create(user);
031 }
032
033 public static PermissionCheckerFactory getPermissionCheckerFactory() {
034 PortalRuntimePermission.checkGetBeanProperty(
035 PermissionCheckerFactoryUtil.class);
036
037 return _instance._serviceTracker.getService();
038 }
039
040 private PermissionCheckerFactoryUtil() {
041 Registry registry = RegistryUtil.getRegistry();
042
043 _serviceTracker = registry.trackServices(
044 PermissionCheckerFactory.class);
045
046 _serviceTracker.open();
047 }
048
049 private static final PermissionCheckerFactoryUtil _instance =
050 new PermissionCheckerFactoryUtil();
051
052 private final ServiceTracker<?, PermissionCheckerFactory> _serviceTracker;
053
054 }