001
014
015 package com.liferay.portal.security.auth;
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 FullNameValidatorFactory {
029
030 public static FullNameValidator getInstance() {
031 return _fullNameValidator;
032 }
033
034 public static void setInstance(FullNameValidator fullNameValidator) {
035 if (_log.isDebugEnabled()) {
036 _log.debug("Set " + ClassUtil.getClassName(fullNameValidator));
037 }
038
039 if (fullNameValidator == null) {
040 _fullNameValidator = _originalFullNameValidator;
041 }
042 else {
043 _fullNameValidator = fullNameValidator;
044 }
045 }
046
047 public void afterPropertiesSet() throws Exception {
048 if (_log.isDebugEnabled()) {
049 _log.debug("Instantiate " + PropsValues.USERS_FULL_NAME_VALIDATOR);
050 }
051
052 ClassLoader classLoader = ClassLoaderUtil.getPortalClassLoader();
053
054 _originalFullNameValidator =
055 (FullNameValidator)InstanceFactory.newInstance(
056 classLoader, PropsValues.USERS_FULL_NAME_VALIDATOR);
057
058 _fullNameValidator = _originalFullNameValidator;
059 }
060
061 private static Log _log = LogFactoryUtil.getLog(
062 FullNameValidatorFactory.class);
063
064 private static volatile FullNameValidator _fullNameValidator;
065 private static FullNameValidator _originalFullNameValidator;
066
067 }