org.mycore.frontend.indexbrowser.lucene
Class MCRIndexBrowserXmlGenerator

java.lang.Object
  extended by org.mycore.frontend.indexbrowser.lucene.MCRIndexBrowserXmlGenerator

public class MCRIndexBrowserXmlGenerator
extends Object

Xml generator class for the index browser.

This class is excluded from MCRIndexBrowserData.

Author:
Matthias Eichner

Field Summary
protected  MCRIndexBrowserIncomingData browseData
           
protected static String defaultlang
           
protected  MCRIndexBrowserConfig indexConfig
           
protected static Logger LOGGER
           
protected  Element page
           
protected  List<MCRIndexBrowserEntry> resultList
           
 
Constructor Summary
MCRIndexBrowserXmlGenerator(List<MCRIndexBrowserEntry> resultList, MCRIndexBrowserIncomingData browseData, MCRIndexBrowserConfig indexConfig)
           
 
Method Summary
static Element buildPageElement(MCRIndexBrowserIncomingData browseData)
          Creates the root element of the browser index.
protected  void buildPrefixDifference(List<org.mycore.frontend.indexbrowser.lucene.MCRIndexBrowserXmlGenerator.MyRangeDelim> delims)
          Builds the prefix difference value for each delimiter.
protected  String buildPrefixDifference(String a, String b)
          Compares two strings and returns the prefix difference.
static Element buildResultsElement(Element pageElement, MCRIndexBrowserIncomingData browseData)
          Adds a result element to the given page element.
protected  void buildXML(Element results, List<org.mycore.frontend.indexbrowser.lucene.MCRIndexBrowserXmlGenerator.MyRangeDelim> delims)
          Adds each delimiter entry to the results element.
 Document getXMLContent()
          Returns the final xml document.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOGGER

protected static Logger LOGGER

defaultlang

protected static final String defaultlang

page

protected Element page

browseData

protected MCRIndexBrowserIncomingData browseData

indexConfig

protected MCRIndexBrowserConfig indexConfig

resultList

protected List<MCRIndexBrowserEntry> resultList
Constructor Detail

MCRIndexBrowserXmlGenerator

public MCRIndexBrowserXmlGenerator(List<MCRIndexBrowserEntry> resultList,
                                   MCRIndexBrowserIncomingData browseData,
                                   MCRIndexBrowserConfig indexConfig)
Method Detail

getXMLContent

public Document getXMLContent()
Returns the final xml document.

Returns:
xml document

buildPageElement

public static Element buildPageElement(MCRIndexBrowserIncomingData browseData)
Creates the root element of the browser index.

Parameters:
browseData - the incoming data from the browser
Returns:
the new root element

buildResultsElement

public static Element buildResultsElement(Element pageElement,
                                          MCRIndexBrowserIncomingData browseData)
Adds a result element to the given page element.

Parameters:
pageElement - the parent element
browseData - the incoming data from the browser
Returns:
the new results element.

buildPrefixDifference

protected void buildPrefixDifference(List<org.mycore.frontend.indexbrowser.lucene.MCRIndexBrowserXmlGenerator.MyRangeDelim> delims)
Builds the prefix difference value for each delimiter.

Parameters:
delims - a list of delimiter.

buildPrefixDifference

protected String buildPrefixDifference(String a,
                                       String b)
Compares two strings and returns the prefix difference.

Parameters:
a - the first string
b - the second string
Returns:
the prefix which is equal in both string

buildXML

protected void buildXML(Element results,
                        List<org.mycore.frontend.indexbrowser.lucene.MCRIndexBrowserXmlGenerator.MyRangeDelim> delims)
Adds each delimiter entry to the results element.

Parameters:
results - the parent results element
delims - a list of delimiters