com.ibm.di.parser
Class SPMLv2Parser

java.lang.Object
  extended by com.ibm.di.parser.ParserImpl
      extended by com.ibm.di.parser.xml.XMLParser2
          extended by com.ibm.di.parser.SPMLv2Parser
All Implemented Interfaces:
ParserInterface, VersionInfoInterface

public class SPMLv2Parser
extends XMLParser2

A TDI Parser class for reading and writing Entries in SPMLv2 DSMLv2 Profile format.


Field Summary
static String ATTR_NAME_ATTR_DESCRIPTIONS
          Name of the SPML attributeDescription attribute.
static String ATTR_NAME_CONTAINERID
          Name of the SPML containerID attribute.
static String ATTR_NAME_CONTAINERID_TARGETID
          Name of the SPML containerID.targetID attribute.
static String ATTR_NAME_ERROR_CODE
          Name of the SPML errorCode attribute.
static String ATTR_NAME_ERROR_MESSAGES
          Name of the SPML errorMessages attribute.
static String ATTR_NAME_FILTER
          Name of the SPML filter attribute.
static String ATTR_NAME_PSO_TARGETID
          Name of the SPML pso.targetID attribute.
static String ATTR_NAME_PSOID
          Name of the SPML psoID attribute.
static String ATTR_NAME_REQUESTID
          Name of the SPML requestID attribute.
static String ATTR_NAME_RESULT_ENTRIES
          Name of the SPML resultEntries attribute.
static String ATTR_NAME_SEARCH_SCOPE
          Name of the SPML scope attribute.
static String ATTR_NAME_SPML_OP_TYPE
          Name of the SPML operation type attribute.
static String ATTR_NAME_SPML_OPERATION
          Name of the SPML operation attribute.
static String ATTR_NAME_STATUS
          Name of the SPML status attribute.
static String ATTR_NAME_SUBSTRINGS_ANY
          Name of the SPML filter.substrings.any attribute.
static String ATTR_NAME_SUBSTRINGS_FINAL
          Name of the SPML filter.substrings.final attribute.
static String ATTR_NAME_SUBSTRINGS_INITIAL
          Name of the SPML filter.substrings.initial attribute.
static String ATTR_NAME_SUBSTRINGS_NAME
          Name of the SPML filter.substrings.name attribute.
static String ATTR_NAME_TARGETID
          Name of the SPML targetID attribute.
static String OP_TYPE_REQUEST
          Request type of the operation.
static String OP_TYPE_RESPONSE
          Response type of the operation.
static String OPERATION_ADD
          Add operation.
static String OPERATION_DELETE
          Delete operation.
static String OPERATION_LOOKUP
          Lookup operation.
static String OPERATION_MODIFY
          Modify operation.
static String OPERATION_SEARCH
          Search operation.
static String PARAMETER_BINARY_ATTRIBUTES
          binaryAttributes config parameter name.
static String XML_ATTR_DNATTR
          Name of the XML attribute holding the dnAttributes value.
static String XML_ATTR_NAME
          Name of the XML attribute holding the name of the filter item.
static String XML_ATTR_RULE
          Name of the XML attribute holding the matchingRule value.
static String XML_TAG_AND
          Name of the XML tag containing the and filter items.
static String XML_TAG_ANY
          Name of the XML tag containing the any filter items.
static String XML_TAG_APPROXMATCH
          Name of the XML tag containing the approxMatch filter items.
static String XML_TAG_EQUALITYMATCH
          Name of the XML tag containing the equalityMatch filter items.
static String XML_TAG_EXTMATCH
          Name of the XML tag containing the extensibleMatch filter items.
static String XML_TAG_FINAL
          Name of the XML tag containing the final filter item.
static String XML_TAG_GREATER
          Name of the XML tag containing the greaterOrEqual filter items.
static String XML_TAG_INITIAL
          Name of the XML tag containing the initial filter items.
static String XML_TAG_LESS
          Name of the XML tag containing the lessOrEqual filter items.
static String XML_TAG_NOT
          Name of the XML tag containing the not filter items.
static String XML_TAG_OR
          Name of the XML tag containing the or filter items.
static String XML_TAG_PRESENT
          Name of the XML tag containing the present filter items.
static String XML_TAG_SUBSTRINGS
          Name of the XML tag containing the substrings filter item.
static String XML_TAG_VALUE
          Name of the XML attribute holding the value of the filter item.
 
Fields inherited from class com.ibm.di.parser.xml.XMLParser2
attrsDeclaration, charEncoding, coalescing, currentEntryAsXML, currentEntryAsXMLString, DEFAULT_ENCODING, DUMMY_ROOT_NAME, entryTag, firstWriteStart, indentOutput, nsMap, nsTracker, permitInvalidXmlChar, skipXMLOnReading, skipXMLOnWriting, standaloneRoot, valueTag, wrapUnwrapEntry, xmlVersion, xPath, xPathStr, xsdPath
 
Fields inherited from class com.ibm.di.parser.ParserImpl
_debug, myConfiguration
 
Constructor Summary
SPMLv2Parser()
           
 
Method Summary
 void closeParser()
          Closes the parser
 void flush()
          Flushes the parser's outputstream or writer
 String getVersion()
          Version information.
protected  void initInput()
          Initializes the Input.
protected  void initOutput()
          Initializes the Output.
 void initParser()
          Initializes the Parser
 Entry readEntry()
          Reads a request or response from a batch message
 void writeEntry(Entry aEntry)
          Writes down a request or response to a batch message
 
Methods inherited from class com.ibm.di.parser.xml.XMLParser2
getCurrentEntryAsXMLStream, getCurrentEntryAsXMLString, getCurrentEntryPath, getLogger, getSchemaLocationFromXML, querySchema
 
Methods inherited from class com.ibm.di.parser.ParserImpl
debug, debugMode, getClassInstance, getContext, getDebug, getInputStream, getOutputStream, getParam, getParser, getReader, getWriter, isDeltaSupported, logmsg, registerScriptBeans, setConfiguration, setContext, setDebug, setInputStream, setInputStream, setInputStream, setOutputStream, setOutputStream, setParam, setParser
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.di.parser.ParserInterface
getContext, getDebug, getParam, getParser, getReader, getWriter, isDeltaSupported, registerScriptBeans, setConfiguration, setContext, setDebug, setInputStream, setInputStream, setInputStream, setOutputStream, setOutputStream, setParam, setParser
 

Field Detail

PARAMETER_BINARY_ATTRIBUTES

public static final String PARAMETER_BINARY_ATTRIBUTES
binaryAttributes config parameter name.

See Also:
Constant Field Values

ATTR_NAME_SPML_OP_TYPE

public static final String ATTR_NAME_SPML_OP_TYPE
Name of the SPML operation type attribute.

See Also:
Constant Field Values

OP_TYPE_REQUEST

public static final String OP_TYPE_REQUEST
Request type of the operation.

See Also:
Constant Field Values

OP_TYPE_RESPONSE

public static final String OP_TYPE_RESPONSE
Response type of the operation.

See Also:
Constant Field Values

ATTR_NAME_SPML_OPERATION

public static final String ATTR_NAME_SPML_OPERATION
Name of the SPML operation attribute.

See Also:
Constant Field Values

OPERATION_ADD

public static final String OPERATION_ADD
Add operation.

See Also:
Constant Field Values

OPERATION_SEARCH

public static final String OPERATION_SEARCH
Search operation.

See Also:
Constant Field Values

OPERATION_MODIFY

public static final String OPERATION_MODIFY
Modify operation.

See Also:
Constant Field Values

OPERATION_DELETE

public static final String OPERATION_DELETE
Delete operation.

See Also:
Constant Field Values

OPERATION_LOOKUP

public static final String OPERATION_LOOKUP
Lookup operation.

See Also:
Constant Field Values

ATTR_NAME_CONTAINERID

public static final String ATTR_NAME_CONTAINERID
Name of the SPML containerID attribute.

See Also:
Constant Field Values

ATTR_NAME_CONTAINERID_TARGETID

public static final String ATTR_NAME_CONTAINERID_TARGETID
Name of the SPML containerID.targetID attribute.

See Also:
Constant Field Values

ATTR_NAME_SEARCH_SCOPE

public static final String ATTR_NAME_SEARCH_SCOPE
Name of the SPML scope attribute.

See Also:
Constant Field Values

ATTR_NAME_REQUESTID

public static final String ATTR_NAME_REQUESTID
Name of the SPML requestID attribute.

See Also:
Constant Field Values

ATTR_NAME_TARGETID

public static final String ATTR_NAME_TARGETID
Name of the SPML targetID attribute.

See Also:
Constant Field Values

ATTR_NAME_RESULT_ENTRIES

public static final String ATTR_NAME_RESULT_ENTRIES
Name of the SPML resultEntries attribute.

See Also:
Constant Field Values

ATTR_NAME_PSOID

public static final String ATTR_NAME_PSOID
Name of the SPML psoID attribute.

See Also:
Constant Field Values

ATTR_NAME_PSO_TARGETID

public static final String ATTR_NAME_PSO_TARGETID
Name of the SPML pso.targetID attribute.

See Also:
Constant Field Values

ATTR_NAME_STATUS

public static final String ATTR_NAME_STATUS
Name of the SPML status attribute.

See Also:
Constant Field Values

ATTR_NAME_ERROR_MESSAGES

public static final String ATTR_NAME_ERROR_MESSAGES
Name of the SPML errorMessages attribute.

See Also:
Constant Field Values

ATTR_NAME_ERROR_CODE

public static final String ATTR_NAME_ERROR_CODE
Name of the SPML errorCode attribute.

See Also:
Constant Field Values

ATTR_NAME_ATTR_DESCRIPTIONS

public static final String ATTR_NAME_ATTR_DESCRIPTIONS
Name of the SPML attributeDescription attribute.

See Also:
Constant Field Values

ATTR_NAME_SUBSTRINGS_NAME

public static final String ATTR_NAME_SUBSTRINGS_NAME
Name of the SPML filter.substrings.name attribute.

See Also:
Constant Field Values

ATTR_NAME_SUBSTRINGS_INITIAL

public static final String ATTR_NAME_SUBSTRINGS_INITIAL
Name of the SPML filter.substrings.initial attribute.

See Also:
Constant Field Values

ATTR_NAME_SUBSTRINGS_ANY

public static final String ATTR_NAME_SUBSTRINGS_ANY
Name of the SPML filter.substrings.any attribute.

See Also:
Constant Field Values

ATTR_NAME_SUBSTRINGS_FINAL

public static final String ATTR_NAME_SUBSTRINGS_FINAL
Name of the SPML filter.substrings.final attribute.

See Also:
Constant Field Values

ATTR_NAME_FILTER

public static final String ATTR_NAME_FILTER
Name of the SPML filter attribute.

Note: this is a hierarchical attribute.

See Also:
Constant Field Values

XML_ATTR_NAME

public static final String XML_ATTR_NAME
Name of the XML attribute holding the name of the filter item.

See Also:
Constant Field Values

XML_ATTR_DNATTR

public static final String XML_ATTR_DNATTR
Name of the XML attribute holding the dnAttributes value.

See Also:
Constant Field Values

XML_ATTR_RULE

public static final String XML_ATTR_RULE
Name of the XML attribute holding the matchingRule value.

See Also:
Constant Field Values

XML_TAG_VALUE

public static final String XML_TAG_VALUE
Name of the XML attribute holding the value of the filter item.

See Also:
Constant Field Values

XML_TAG_SUBSTRINGS

public static final String XML_TAG_SUBSTRINGS
Name of the XML tag containing the substrings filter item.

See Also:
Constant Field Values

XML_TAG_FINAL

public static final String XML_TAG_FINAL
Name of the XML tag containing the final filter item.

See Also:
Constant Field Values

XML_TAG_INITIAL

public static final String XML_TAG_INITIAL
Name of the XML tag containing the initial filter items.

See Also:
Constant Field Values

XML_TAG_ANY

public static final String XML_TAG_ANY
Name of the XML tag containing the any filter items.

See Also:
Constant Field Values

XML_TAG_EQUALITYMATCH

public static final String XML_TAG_EQUALITYMATCH
Name of the XML tag containing the equalityMatch filter items.

See Also:
Constant Field Values

XML_TAG_PRESENT

public static final String XML_TAG_PRESENT
Name of the XML tag containing the present filter items.

See Also:
Constant Field Values

XML_TAG_GREATER

public static final String XML_TAG_GREATER
Name of the XML tag containing the greaterOrEqual filter items.

See Also:
Constant Field Values

XML_TAG_LESS

public static final String XML_TAG_LESS
Name of the XML tag containing the lessOrEqual filter items.

See Also:
Constant Field Values

XML_TAG_EXTMATCH

public static final String XML_TAG_EXTMATCH
Name of the XML tag containing the extensibleMatch filter items.

See Also:
Constant Field Values

XML_TAG_APPROXMATCH

public static final String XML_TAG_APPROXMATCH
Name of the XML tag containing the approxMatch filter items.

See Also:
Constant Field Values

XML_TAG_AND

public static final String XML_TAG_AND
Name of the XML tag containing the and filter items.

See Also:
Constant Field Values

XML_TAG_OR

public static final String XML_TAG_OR
Name of the XML tag containing the or filter items.

See Also:
Constant Field Values

XML_TAG_NOT

public static final String XML_TAG_NOT
Name of the XML tag containing the not filter items.

See Also:
Constant Field Values
Constructor Detail

SPMLv2Parser

public SPMLv2Parser()
Method Detail

initParser

public void initParser()
                throws Exception
Initializes the Parser

Specified by:
initParser in interface ParserInterface
Overrides:
initParser in class XMLParser2
Throws:
Exception - if the initialization fails

initInput

protected void initInput()
                  throws Exception
Initializes the Input. Note: this parser relies on a Reader object to read the XML document.

Overrides:
initInput in class XMLParser2
Throws:
Exception - - in case of a read error occurs.
See Also:
ParserImpl.setInputStream(java.io.Reader)

initOutput

protected void initOutput()
                   throws Exception
Initializes the Output.

Overrides:
initOutput in class XMLParser2
Throws:
Exception - - in case of write error occurs.

readEntry

public Entry readEntry()
                throws Exception
Reads a request or response from a batch message

Specified by:
readEntry in interface ParserInterface
Overrides:
readEntry in class XMLParser2
Returns:
the SPML message as Entry.
Throws:
Exception - if the SPML could not be parsed correctly or any other error occurs.

writeEntry

public void writeEntry(Entry aEntry)
                throws Exception
Writes down a request or response to a batch message

Specified by:
writeEntry in interface ParserInterface
Overrides:
writeEntry in class XMLParser2
Parameters:
aEntry - TDI Entry that presents the request/response that is to be written to a batch message
Throws:
Exception - if some attributes are missing.

getVersion

public String getVersion()
Version information.

Specified by:
getVersion in interface VersionInfoInterface
Overrides:
getVersion in class XMLParser2
Returns:
version information

closeParser

public void closeParser()
                 throws Exception
Closes the parser

Specified by:
closeParser in interface ParserInterface
Overrides:
closeParser in class XMLParser2
Throws:
Exception - if an error occurs.

flush

public void flush()
Flushes the parser's outputstream or writer

Specified by:
flush in interface ParserInterface
Overrides:
flush in class ParserImpl