com.raritantechnologies.xml
Class XMLResult

java.lang.Object
  extended bycom.raritantechnologies.searchApp.BasicResult
      extended bycom.raritantechnologies.xml.XMLResult
All Implemented Interfaces:
IResult
Direct Known Subclasses:
FederatedResult

public class XMLResult
extends BasicResult

Implementation of IResult that can be constructed directly from XML. Uses an XMLResultProcessor to set result field values.


Developed by Raritan Technologies .

Author:
Ted Sullivan

Field Summary
static java.lang.String INIT_XML
           
 
Fields inherited from class com.raritantechnologies.searchApp.BasicResult
fieldValues
 
Constructor Summary
XMLResult()
           
XMLResult(org.w3c.dom.Document xmlNode)
           
XMLResult(org.w3c.dom.Element xmlElem)
           
XMLResult(java.lang.String xmlString)
           
XMLResult(java.lang.String xmlString, boolean keepXMLString)
           
XMLResult(java.lang.String xmlString, boolean keepXMLString, boolean wrapCData)
           
 
Method Summary
 void addNestedResult(java.lang.String fieldName, IResult nestedResult)
           
 void addNestedResultTag(java.lang.String field, java.lang.String xmlTag)
           
 void addValue(java.lang.String field, java.lang.String value)
          Adds a value for a field.
 void appendValue(java.lang.String field, java.lang.String value)
          Appends (concatenates) the value parameter to the current value of the field if the field already has a value.
 java.lang.String getValue(java.lang.String fieldID)
          returns the value of a vield.
 java.lang.String[] getValues(java.lang.String fieldID)
          Support for multiple values - returns a String[].
 java.lang.String getXML(ILoginInfo userInfo)
           
 java.lang.String getXML(java.lang.String rootTagName)
           
 java.lang.String getXML(java.lang.String rootTagName, ILoginInfo userInfo, java.util.Iterator resultFields, java.util.Iterator nestedFields)
           
 boolean hasMultipleValues(java.lang.String field)
           
 boolean hasNestedResults()
          support for hierarchical IResult objects.
 void setCallbacks(java.util.List callbackList, boolean replaceXML, java.lang.String rootTagName)
           
 void setCallbacks(java.util.List callbackList, boolean replaceXML, java.lang.String rootTagName, java.lang.String xmlString)
           
 void setDelimiterMap(java.util.Map delimMap)
           
 void setFieldDelim(java.lang.String field, java.lang.String delimiter)
           
 void setMultiValuePath(java.lang.String field, java.lang.String valPath)
           
 void setMultiValuePaths(java.util.Map multiValuePaths)
           
 void setNestedResultPath(java.lang.String field, java.lang.String nestedResPath)
           
 void setNestedResultPaths(java.util.Map nestedResultPaths)
           
 void setRootTagName(java.lang.String rootTagName)
           
 void setSingleValuePaths(java.util.Map singleValuePaths)
           
 void setValue(java.lang.String field, java.lang.String value)
          Sets a field value in the result, replacing any previously set value.
 void setValuePath(java.lang.String field, java.lang.String valPath)
           
 void setWrapCData(boolean wrapCData)
           
 void setXMLString(java.lang.String xmlString)
           
 void setXMLTag(java.lang.String field, java.lang.String xmlTag)
           
 
Methods inherited from class com.raritantechnologies.searchApp.BasicResult
addNestedResults, addTree, clearValue, getDOM, getFieldNames, getFullTextFormats, getIDField, getNestedFieldNames, getNestedResults, getResultSet, getSearchSource, getSearchSourceName, getTitleField, getTree, getTreeNames, getURLField, getValue, getXML, setIDField, setNestedResults, setSearchSourceName, setTitleField, setURLField, setValues, writeFullText
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INIT_XML

public static final java.lang.String INIT_XML
See Also:
Constant Field Values
Constructor Detail

XMLResult

public XMLResult()

XMLResult

public XMLResult(java.lang.String xmlString)

XMLResult

public XMLResult(java.lang.String xmlString,
                 boolean keepXMLString)

XMLResult

public XMLResult(java.lang.String xmlString,
                 boolean keepXMLString,
                 boolean wrapCData)

XMLResult

public XMLResult(org.w3c.dom.Document xmlNode)

XMLResult

public XMLResult(org.w3c.dom.Element xmlElem)
Method Detail

setCallbacks

public void setCallbacks(java.util.List callbackList,
                         boolean replaceXML,
                         java.lang.String rootTagName)

setCallbacks

public void setCallbacks(java.util.List callbackList,
                         boolean replaceXML,
                         java.lang.String rootTagName,
                         java.lang.String xmlString)

setRootTagName

public void setRootTagName(java.lang.String rootTagName)

getXML

public java.lang.String getXML(ILoginInfo userInfo)
Specified by:
getXML in interface IResult
Overrides:
getXML in class BasicResult

getXML

public java.lang.String getXML(java.lang.String rootTagName)
Overrides:
getXML in class BasicResult

getXML

public java.lang.String getXML(java.lang.String rootTagName,
                               ILoginInfo userInfo,
                               java.util.Iterator resultFields,
                               java.util.Iterator nestedFields)
Overrides:
getXML in class BasicResult

setValue

public void setValue(java.lang.String field,
                     java.lang.String value)
Sets a field value in the result, replacing any previously set value.

Specified by:
setValue in interface IResult
Overrides:
setValue in class BasicResult

addValue

public void addValue(java.lang.String field,
                     java.lang.String value)
Adds a value for a field. If this method is called more than once, the field will contain multiple values.

Specified by:
addValue in interface IResult
Overrides:
addValue in class BasicResult

setXMLTag

public void setXMLTag(java.lang.String field,
                      java.lang.String xmlTag)

addNestedResultTag

public void addNestedResultTag(java.lang.String field,
                               java.lang.String xmlTag)

appendValue

public void appendValue(java.lang.String field,
                        java.lang.String value)
Appends (concatenates) the value parameter to the current value of the field if the field already has a value. Equivalent to setValue( ) if the field is empty.


setSingleValuePaths

public void setSingleValuePaths(java.util.Map singleValuePaths)

setValuePath

public void setValuePath(java.lang.String field,
                         java.lang.String valPath)

getValue

public java.lang.String getValue(java.lang.String fieldID)
Description copied from interface: IResult
returns the value of a vield. For multiple value fields, implementation should return a delimited string.

Specified by:
getValue in interface IResult
Overrides:
getValue in class BasicResult

hasNestedResults

public boolean hasNestedResults()
Description copied from interface: IResult
support for hierarchical IResult objects.

Specified by:
hasNestedResults in interface IResult
Overrides:
hasNestedResults in class BasicResult

setMultiValuePaths

public void setMultiValuePaths(java.util.Map multiValuePaths)

setMultiValuePath

public void setMultiValuePath(java.lang.String field,
                              java.lang.String valPath)

setNestedResultPaths

public void setNestedResultPaths(java.util.Map nestedResultPaths)

setNestedResultPath

public void setNestedResultPath(java.lang.String field,
                                java.lang.String nestedResPath)

getValues

public java.lang.String[] getValues(java.lang.String fieldID)
Description copied from interface: IResult
Support for multiple values - returns a String[]. if there is only one value String array is of length 1.

Specified by:
getValues in interface IResult
Overrides:
getValues in class BasicResult

hasMultipleValues

public boolean hasMultipleValues(java.lang.String field)
Specified by:
hasMultipleValues in interface IResult
Overrides:
hasMultipleValues in class BasicResult

addNestedResult

public void addNestedResult(java.lang.String fieldName,
                            IResult nestedResult)
Specified by:
addNestedResult in interface IResult
Overrides:
addNestedResult in class BasicResult

setFieldDelim

public void setFieldDelim(java.lang.String field,
                          java.lang.String delimiter)

setDelimiterMap

public void setDelimiterMap(java.util.Map delimMap)

setWrapCData

public void setWrapCData(boolean wrapCData)
Overrides:
setWrapCData in class BasicResult

setXMLString

public void setXMLString(java.lang.String xmlString)