01: /*
02: * The contents of this file are subject to the
03: * Mozilla Public License Version 1.1 (the "License");
04: * you may not use this file except in compliance with the License.
05: * You may obtain a copy of the License at http://www.mozilla.org/MPL/
06: *
07: * Software distributed under the License is distributed on an "AS IS"
08: * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
09: * See the License for the specific language governing rights and
10: * limitations under the License.
11: *
12: * The Initial Developer of the Original Code is Simulacra Media Ltd.
13: * Portions created by Simulacra Media Ltd are Copyright (C) Simulacra Media Ltd, 2004.
14: *
15: * All Rights Reserved.
16: *
17: * Contributor(s):
18: */
19: package org.openharmonise.rm.publishing.renderers;
20:
21: import java.io.*;
22:
23: import javax.xml.transform.*;
24:
25: import org.openharmonise.commons.xml.*;
26:
27: /**
28: * Interface to be implemented by classes which can be used to render
29: * the output of publishing objects to XML to a particular format, e.g.
30: * HTML, XML or PDF.
31: *
32: * @author Michael Bell
33: * @version $Revision: 1.1 $
34: *
35: */
36: public interface PageRenderer {
37:
38: /**
39: * Transforms the <code>XMLDocument</code> using the given <code>Templates</code>
40: * and whatever necessary processing is needed to the given <code>OutputStream</code>.
41: *
42: * @param xdoc
43: * @param templates
44: * @param out
45: */
46: public void render(XMLDocument xdoc, Templates templates,
47: OutputStream out) throws RenderException;
48: }
|