001
014
015 package com.liferay.portal.image;
016
017 import com.liferay.portal.kernel.image.Hook;
018 import com.liferay.portal.kernel.log.Log;
019 import com.liferay.portal.kernel.log.LogFactoryUtil;
020 import com.liferay.portal.kernel.util.PortalClassLoaderUtil;
021 import com.liferay.portal.util.PropsValues;
022
023
026 public class HookFactory {
027
028 public static Hook getInstance() {
029 if (_hook == null) {
030 if (_log.isDebugEnabled()) {
031 _log.debug("Instantiate " + PropsValues.IMAGE_HOOK_IMPL);
032 }
033
034 ClassLoader classLoader = PortalClassLoaderUtil.getClassLoader();
035
036 try {
037 _hook = (Hook)classLoader.loadClass(
038 PropsValues.IMAGE_HOOK_IMPL).newInstance();
039 }
040 catch (Exception e) {
041 _log.error(e, e);
042 }
043 }
044
045 if (_log.isDebugEnabled()) {
046 _log.debug("Return " + _hook.getClass().getName());
047 }
048
049 return _hook;
050 }
051
052 public static void setInstance(Hook hook) {
053 if (_log.isDebugEnabled()) {
054 _log.debug("Set " + hook.getClass().getName());
055 }
056
057 _hook = hook;
058 }
059
060 private static Log _log = LogFactoryUtil.getLog(HookFactory.class);
061
062 private static Hook _hook;
063
064 }