001
014
015 package com.liferay.portal.template;
016
017 import com.liferay.portal.kernel.log.Log;
018 import com.liferay.portal.kernel.log.LogFactoryUtil;
019 import com.liferay.portal.kernel.template.TemplateConstants;
020
021 import java.net.URL;
022
023
026 public class ClassLoaderResourceParser extends URLResourceParser {
027
028 public ClassLoaderResourceParser() {
029 Class<?> clazz = getClass();
030
031 _classLoader = clazz.getClassLoader();
032 }
033
034 public ClassLoaderResourceParser(ClassLoader classLoader) {
035 _classLoader = classLoader;
036 }
037
038 @Override
039 @SuppressWarnings("deprecation")
040 public URL getURL(String templateId) {
041 if (templateId.contains(TemplateConstants.JOURNAL_SEPARATOR) ||
042 templateId.contains(TemplateConstants.SERVLET_SEPARATOR) ||
043 templateId.contains(TemplateConstants.TEMPLATE_SEPARATOR) ||
044 templateId.contains(TemplateConstants.THEME_LOADER_SEPARATOR)) {
045
046 return null;
047 }
048
049 if (_log.isDebugEnabled()) {
050 _log.debug("Loading " + templateId);
051 }
052
053 return _classLoader.getResource(templateId);
054 }
055
056 private static final Log _log = LogFactoryUtil.getLog(
057 ClassLoaderResourceParser.class);
058
059 private final ClassLoader _classLoader;
060
061 }