/** * Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved. * EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * http://www.ewcms.com */ package com.ewcms.publication.freemarker.directive.out; import java.util.Map; import freemarker.core.Environment; import freemarker.template.TemplateException; /** * 构造标签输出的内容 * * @author wangwei * * @param <T> 值的类型 */ public interface DirectiveOutable{ /** * 处理标签返回值 * * @param value * 被处理的值 * @param env * Freemarker环境 * @param params * 标签参数集合 * @return 返回值 * @throws TemplateException */ @SuppressWarnings("rawtypes") Object loopValue(Object value,Environment env,Map params)throws TemplateException; /** * 构造标签输出的内容 * * @param value * 被构造输出的值 * @param env * Freemarker环境 * @param params * 标签参数集合 * * @return 输出内容 * @throws TemplateException */ @SuppressWarnings("rawtypes") String constructOut(Object value,Environment env,Map params)throws TemplateException; }