View Javadoc
1 package org.apache.turbine.services.webmacro; 2 3 /* ==================================================================== 4 * The Apache Software License, Version 1.1 5 * 6 * Copyright (c) 2001 The Apache Software Foundation. All rights 7 * reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted provided that the following conditions 11 * are met: 12 * 13 * 1. Redistributions of source code must retain the above copyright 14 * notice, this list of conditions and the following disclaimer. 15 * 16 * 2. Redistributions in binary form must reproduce the above copyright 17 * notice, this list of conditions and the following disclaimer in 18 * the documentation and/or other materials provided with the 19 * distribution. 20 * 21 * 3. The end-user documentation included with the redistribution, 22 * if any, must include the following acknowledgment: 23 * "This product includes software developed by the 24 * Apache Software Foundation (http://www.apache.org/)." 25 * Alternately, this acknowledgment may appear in the software itself, 26 * if and wherever such third-party acknowledgments normally appear. 27 * 28 * 4. The names "Apache" and "Apache Software Foundation" and 29 * "Apache Turbine" must not be used to endorse or promote products 30 * derived from this software without prior written permission. For 31 * written permission, please contact apache@apache.org. 32 * 33 * 5. Products derived from this software may not be called "Apache", 34 * "Apache Turbine", nor may "Apache" appear in their name, without 35 * prior written permission of the Apache Software Foundation. 36 * 37 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 38 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 39 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 40 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 41 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 42 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 43 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 44 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 45 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 46 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 47 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 48 * SUCH DAMAGE. 49 * ==================================================================== 50 * 51 * This software consists of voluntary contributions made by many 52 * individuals on behalf of the Apache Software Foundation. For more 53 * information on the Apache Software Foundation, please see 54 * <http://www.apache.org/>;. 55 */ 56 57 import java.io.OutputStream; 58 import org.apache.turbine.services.Service; 59 import org.apache.turbine.util.RunData; 60 import org.apache.turbine.util.TurbineException; 61 import org.webmacro.FastWriter; 62 import org.webmacro.NotFoundException; 63 import org.webmacro.Template; 64 import org.webmacro.servlet.WebContext; 65 66 /*** 67 * Implementations of the WebMacroService interface. 68 * 69 * @author <a href="mailto:mbryson@mont.mindspring.com">Dave Bryson</a> 70 * @author <a href="mailto:dlr@collab.net">Daniel Rall</a> 71 * @version $Id: WebMacroService.java,v 1.1.1.1 2001/08/16 05:09:26 jvanzyl Exp $ 72 * @deprecated 73 */ 74 public interface WebMacroService 75 extends Service 76 { 77 /*** 78 * The name of this service. Used to retrieve it from the broker. 79 */ 80 public static final String SERVICE_NAME = "WebMacroService"; 81 82 /*** 83 * The key for a WebMacro context. 84 */ 85 public static final String WEBMACRO_CONTEXT = "WEBMACRO_CONTEXT"; 86 87 /*** 88 * Process the request and fill in the template with the values 89 * you set in the WebContext. 90 * 91 * @param wc A WebContext. 92 * @param template A String with the filename of the template. 93 * @return The process template as a String. 94 * @exception TurbineException Error processing request. 95 */ 96 public String handleRequest(WebContext wc, 97 String template) 98 throws TurbineException; 99 100 101 /*** 102 * Process the request and fill in the template with the values 103 * you set in the WebContext. 104 * 105 * @param wc The populated context. 106 * @param filename The file name of the template. 107 * @param out A stream to write the processed template to. 108 * @exception Exception Error processing request. 109 */ 110 public void handleRequest(WebContext wc, 111 String filename, 112 OutputStream out) 113 throws Exception; 114 115 /*** 116 * Process the request and fill in the template with the values 117 * you set in the WebContext. 118 * 119 * @param wc A WebContext. 120 * @param filename A String with the filename of the template. 121 * @param out A Writer where we will write the process template as 122 * a String. 123 * @exception Exception Error processing request. 124 */ 125 public void handleRequest(WebContext wc, 126 String template, 127 FastWriter out) 128 throws Exception; 129 130 /*** 131 * Create an empty WebContext object. 132 * 133 * @return An empty WebContext object. 134 */ 135 public WebContext getContext(); 136 137 /*** 138 * Create a WebContext from the RunData object. Adds a pointer to 139 * the RunData object to the WC so that RunData is available in 140 * the templates. 141 * 142 * @param data The Turbine RunData object. 143 * @return A clone of the WebContext needed by WebMacro. 144 */ 145 public WebContext getContext(RunData data); 146 147 /*** 148 * Return a template from WebMacro. 149 * 150 * @param filename A String with the name of the template. 151 * @return A Template. 152 * @exception NotFoundException The template could not be found. 153 */ 154 public Template getTemplate(String template) 155 throws NotFoundException; 156 }

This page was automatically generated by Maven