001
014
015 package com.liferay.portal.security.membershippolicy;
016
017 import com.liferay.portal.kernel.log.Log;
018 import com.liferay.portal.kernel.log.LogFactoryUtil;
019 import com.liferay.portal.kernel.util.ClassUtil;
020 import com.liferay.portal.kernel.util.InstanceFactory;
021 import com.liferay.portal.util.ClassLoaderUtil;
022 import com.liferay.portal.util.PropsValues;
023
024
028 public class UserGroupMembershipPolicyFactoryImpl
029 implements UserGroupMembershipPolicyFactory {
030
031 public void afterPropertiesSet() throws Exception {
032 if (_log.isDebugEnabled()) {
033 _log.debug(
034 "Instantiate " + PropsValues.MEMBERSHIP_POLICY_USER_GROUPS);
035 }
036
037 ClassLoader classLoader = ClassLoaderUtil.getPortalClassLoader();
038
039 _originalUserGroupMembershipPolicy =
040 (UserGroupMembershipPolicy)InstanceFactory.newInstance(
041 classLoader, PropsValues.MEMBERSHIP_POLICY_USER_GROUPS);
042
043 _userGroupMembershipPolicy = _originalUserGroupMembershipPolicy;
044 }
045
046 public UserGroupMembershipPolicy getUserGroupMembershipPolicy() {
047 return _userGroupMembershipPolicy;
048 }
049
050 public void setUserGroupMembershipPolicy(
051 UserGroupMembershipPolicy userGroupMembershipPolicy) {
052
053 if (_log.isDebugEnabled()) {
054 _log.debug(
055 "Set " + ClassUtil.getClassName(userGroupMembershipPolicy));
056 }
057
058 if (userGroupMembershipPolicy == null) {
059 _userGroupMembershipPolicy = _originalUserGroupMembershipPolicy;
060 }
061 else {
062 _userGroupMembershipPolicy = userGroupMembershipPolicy;
063 }
064 }
065
066 private static Log _log = LogFactoryUtil.getLog(
067 UserGroupMembershipPolicyFactory.class);
068
069 private static UserGroupMembershipPolicy _originalUserGroupMembershipPolicy;
070 private static volatile UserGroupMembershipPolicy
071 _userGroupMembershipPolicy;
072
073 }