org.jbox.searcher
Class AbstractSearcher

java.lang.Object
  extended by org.jbox.searcher.AbstractSearcher
All Implemented Interfaces:
Searcher
Direct Known Subclasses:
SimpleSearcher

public abstract class AbstractSearcher
extends java.lang.Object
implements Searcher

An abstract class define default behavior of Searcher.

Version:
1.0
Author:
YiBin.H

Field Summary
protected static long ALLPAGENUM
          number of pages in table "Page" in data base.
protected  CutterBox cutterBox
           
protected  PageHome pageHome
           
protected  WordHome wordHome
           
 
Constructor Summary
AbstractSearcher()
           
 
Method Summary
protected  double calculateTFIDF(double tf, double pageNum)
          Calculator TFIDF.
protected  long getAllPageNum()
          Return number of pages in data base.
protected  void pageRank(PageProxy[] pageProxys, int start, int end)
          Rank pages.
 void setCutterBox(CutterBox cutterBox)
          Set a CutterBox object for Searcher to analyze the query string.
 void setPageHome(PageHome pageHome)
          Set PageHome for visiting Page table in data base.
 void setWordHome(WordHome wordHome)
          Set WordHome for visiting Word table in data base.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jbox.searcher.Searcher
search
 

Field Detail

cutterBox

protected CutterBox cutterBox

pageHome

protected PageHome pageHome

wordHome

protected WordHome wordHome

ALLPAGENUM

protected static long ALLPAGENUM
number of pages in table "Page" in data base.

Constructor Detail

AbstractSearcher

public AbstractSearcher()
Method Detail

setCutterBox

public void setCutterBox(CutterBox cutterBox)
Description copied from interface: Searcher
Set a CutterBox object for Searcher to analyze the query string.

Specified by:
setCutterBox in interface Searcher
Parameters:
cutterBox - CutterBox object.

setPageHome

public void setPageHome(PageHome pageHome)
Set PageHome for visiting Page table in data base.

Specified by:
setPageHome in interface Searcher
Parameters:
pageHome - for visiting Page table in data base.

setWordHome

public void setWordHome(WordHome wordHome)
Set WordHome for visiting Word table in data base.

Specified by:
setWordHome in interface Searcher
Parameters:
wordHome - a WordHome for visiting Word table in data base.

getAllPageNum

protected long getAllPageNum()
Return number of pages in data base.

Returns:
number of pages in data base.

calculateTFIDF

protected double calculateTFIDF(double tf,
                                double pageNum)
Calculator TFIDF.

Parameters:
tf - TF.
pageNum - number of pages.
Returns:
TFIDF.

pageRank

protected void pageRank(PageProxy[] pageProxys,
                        int start,
                        int end)
Rank pages. This method using "Quick sort Algorithm" to rank pages between start position and end position by TFIDF.

Parameters:
pageProxys - PageProxy array.
start - start position of the array.
end - end position of the array.