KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openharmonise > rm > publishing > renderers > PageRendererFactory


1 /*
2  * The contents of this file are subject to the
3  * Mozilla Public License Version 1.1 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at http://www.mozilla.org/MPL/
6  *
7  * Software distributed under the License is distributed on an "AS IS"
8  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
9  * 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
22 import org.openharmonise.commons.net.*;
23 import org.openharmonise.rm.publishing.renderers.impl.*;
24
25
26 /**
27  * Factory class which will return the appropriate <code>PageRenderer</code>
28  * for a given mime-type.
29  *
30  * @author Michael Bell
31  * @version $Revision: 1.1 $
32  *
33  */

34 public class PageRendererFactory {
35
36     /**
37      * Uninstantiable constructor
38      */

39     private PageRendererFactory() {
40         super();
41     }
42     
43     public static PageRenderer getRenderer(String JavaDoc mimeType) throws RendererUnavailableException {
44         PageRenderer result = null;
45         
46         if(mimeType.equals(MimeTypeMapping.PDF.getMimeType()) == true) {
47             result = new FOPRenderer();
48         } else if(mimeType.equals(MimeTypeMapping.HTML.getMimeType()) == true
49                     || mimeType.equals(MimeTypeMapping.XML.getMimeType()) == true
50                     || mimeType.equals(MimeTypeMapping.SVG.getMimeType()) == true) {
51             result = new StandardRenderer();
52         } else if(mimeType.equals(MimeTypeMapping.TEXT.getMimeType()) == true) {
53             result = new TextRenderer();
54         } else {
55             throw new RendererUnavailableException("No renderer available for this mime type");
56         }
57         
58         return result;
59     }
60
61 }
62
Popular Tags