KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > lenya > lucene > parser > HTMLParserFactory


1 /*
2  * Copyright 1999-2004 The Apache Software Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */

17
18 /* $Id: HTMLParserFactory.java 42598 2004-03-01 16:18:28Z gregor $ */
19
20 package org.apache.lenya.lucene.parser;
21
22 import java.io.File JavaDoc;
23
24 import org.apache.log4j.Category;
25
26 /**
27  * Factory to create HTML parsers that are used for indexing HTML.
28  */

29 public class HTMLParserFactory {
30     
31     public static Category log = Category.getInstance(HTMLParserFactory.class);
32     
33     /**
34      * Returns an HTMLParser.
35      */

36     public static HTMLParser newInstance(File JavaDoc file) {
37         HTMLParser parser = null;
38
39         // HTML files
40
if (file.getName().endsWith(".html")) {
41             parser = new SwingHTMLParser();
42         }
43         // PDF files
44
else if (file.getName().endsWith(".txt")) {
45             parser = new PDFParserWrapper();
46         } else {
47             parser = new SwingHTMLParser();
48             log.debug(".newInstance(): WARNING: Suffix did no match (" + file.getName() + "). SwingHTMLParser as default parser selected!");
49         }
50
51         log.debug("returning a " + parser.getClass().getName() + " for " + file.getName());
52
53         return parser;
54     }
55 }
56
Popular Tags