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
029 public class SiteMembershipPolicyFactoryImpl
030 implements SiteMembershipPolicyFactory {
031
032 public void afterPropertiesSet() throws Exception {
033 if (_log.isDebugEnabled()) {
034 _log.debug("Instantiate " + PropsValues.MEMBERSHIP_POLICY_SITES);
035 }
036
037 ClassLoader classLoader = ClassLoaderUtil.getPortalClassLoader();
038
039 _originalSiteMembershipPolicy =
040 (SiteMembershipPolicy)InstanceFactory.newInstance(
041 classLoader, PropsValues.MEMBERSHIP_POLICY_SITES);
042
043 _siteMembershipPolicy = _originalSiteMembershipPolicy;
044 }
045
046 public SiteMembershipPolicy getSiteMembershipPolicy() {
047 return _siteMembershipPolicy;
048 }
049
050 public void setSiteMembershipPolicy(
051 SiteMembershipPolicy siteMembershipPolicy) {
052
053 if (_log.isDebugEnabled()) {
054 _log.debug("Set " + ClassUtil.getClassName(siteMembershipPolicy));
055 }
056
057 if (siteMembershipPolicy == null) {
058 _siteMembershipPolicy = _originalSiteMembershipPolicy;
059 }
060 else {
061 _siteMembershipPolicy = siteMembershipPolicy;
062 }
063 }
064
065 private static Log _log = LogFactoryUtil.getLog(
066 SiteMembershipPolicyFactory.class);
067
068 private static SiteMembershipPolicy _originalSiteMembershipPolicy;
069 private static volatile SiteMembershipPolicy _siteMembershipPolicy;
070
071 }