001
014
015 package com.liferay.portal.freemarker;
016
017 import java.io.IOException;
018 import java.io.Reader;
019
020
023 public class LiferayTemplateSource {
024
025 public LiferayTemplateSource(
026 FreeMarkerTemplateLoader freeMarkerTemplateLoader,
027 Object templateSource) {
028
029 _freeMarkerTemplateLoader = freeMarkerTemplateLoader;
030 _templateSource = templateSource;
031 }
032
033 public void close() {
034 _freeMarkerTemplateLoader.closeTemplateSource(_templateSource);
035 }
036
037 @Override
038 public boolean equals(Object obj) {
039 if (obj instanceof LiferayTemplateSource) {
040 LiferayTemplateSource liferayTemplateSource =
041 (LiferayTemplateSource)obj;
042
043 if (liferayTemplateSource._freeMarkerTemplateLoader.equals(
044 _freeMarkerTemplateLoader) &&
045 liferayTemplateSource._templateSource.equals(_templateSource)) {
046
047 return true;
048 }
049 }
050
051 return false;
052 }
053
054 public long getLastModified() {
055 return _freeMarkerTemplateLoader.getLastModified(_templateSource);
056 }
057
058 public Reader getReader(String encoding) throws IOException {
059 return _freeMarkerTemplateLoader.getReader(_templateSource, encoding);
060 }
061
062 @Override
063 public int hashCode() {
064 return _freeMarkerTemplateLoader.hashCode() +
065 (31 * _templateSource.hashCode());
066 }
067
068 @Override
069 public String toString() {
070 return _templateSource.toString();
071 }
072
073 private FreeMarkerTemplateLoader _freeMarkerTemplateLoader;
074 private Object _templateSource;
075
076 }