/** * Copyright 2010 Bing Ran<bing_ran@hotmail.com> * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy * of the License at http://www.apache.org/licenses/LICENSE-2.0. * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package cn.bran.japid.template; import java.io.Serializable; import java.util.HashMap; import java.util.Map; import cn.bran.japid.util.StringBundler; /** * to wrap the result of Japid template rendering. * * Objects of this class can be cached. * * @author Bing Ran<bing_ran@hotmail.com> * */ public class RenderResultBundler implements Serializable { private StringBundler content; long renderTime; // in ms, for recording the time to render. private Map<String, String> headers = new HashMap<String, String>(); public RenderResultBundler(Map<String, String> headers , StringBundler content, long renderTime) { super(); this.content = content; this.renderTime = renderTime; this.headers = headers; } /** * get the interpolated content in StringBuilder. In case of nested action * calls, all the content tiles are generated and interpolated * * @return the fully interpolated content */ public StringBundler getContent() { return content; } public long getRenderTime() { return this.renderTime; } // public void setHeaders(Map<String, String> headers) { // this.headers = headers; // } @Override public String toString() { if (content != null) { return content.toString(); } else { return "RenderResult: null"; } } public Map<String, String> getHeaders() { return this.headers; } }