1 /* 2 * Title: PageParser 3 * Description: 4 * 5 * This software is published under the terms of the OpenSymphony Software 6 * License version 1.1, of which a copy has been included with this 7 * distribution in the LICENSE.txt file. 8 */ 9 10 package com.opensymphony.module.sitemesh; 11 12 import java.io.IOException; 13 14 /** 15 * The PageParser is responsible for parsing the page data into an appropriate 16 * {@link com.opensymphony.module.sitemesh.Page} object. 17 * 18 * <p>The implementation of this can be switched to parse different kind of data 19 * (<i>e.g.</i> HTML, WML, FOP, images) or for performance enhancements. An 20 * implementation is obtained through the {@link com.opensymphony.module.sitemesh.Factory} .</p> 21 * 22 * <p>A single PageParser is reused, therefore the parse() methods need to be thread-safe.</p> 23 * 24 * @author <a HREF="joe@truemesh.com">Joe Walnes</a> 25 * @version $Revision: 1.2 $ 26 */ 27 public interface PageParser { 28 /** 29 * This builds a Page. 30 */ 31 Page parse(char[] data) throws IOException; 32 } 33