Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
XMLHandler Class Reference

Base class for XML handlers. More...

#include <OpenMS/FORMAT/HANDLERS/XMLHandler.h>

Inheritance diagram for XMLHandler:
ConsensusXMLFile CVMappingFile FeatureXMLFile IdXMLFile MascotXMLHandler MzDataHandler< MapType > MzIdentMLHandler MzMLHandler< MapType > MzQuantMLHandler MzXMLHandler< MapType > ParamXMLHandler PTMXMLHandler SemanticValidator TraMLHandler UnimodXMLHandler XTandemInfileXMLHandler OMSSAXMLFile PepXMLFile PepXMLFileMascot ProtXMLFile QcMLFile TransformationXMLFile XTandemXMLFile

Classes

class  EndParsingSoftly
 Exception that is thrown if the parsing is ended by some event (e.g. if only a prefix of the XML file is needed). More...
 

Public Types

enum  ActionMode { LOAD, STORE }
 Action to set the current mode (for error messages) More...
 

Public Member Functions

 XMLHandler (const String &filename, const String &version)
 Default constructor. More...
 
virtual ~XMLHandler ()
 Destructor. More...
 
void reset ()
 Release internal memory used for parsing (call. More...
 
void fatalError (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Fatal error handler. Throws a ParseError exception. More...
 
void error (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Error handler for recoverable errors. More...
 
void warning (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Warning handler. More...
 
virtual void characters (const XMLCh *const chars, const XMLSize_t length)
 Parsing method for character data. More...
 
virtual void startElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname, const xercesc::Attributes &attrs)
 Parsing method for opening tags. More...
 
virtual void endElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname)
 Parsing method for closing tags. More...
 
virtual void writeTo (std::ostream &)
 Writes the contents to a stream. More...
 
String errorString ()
 Returns the last error description. More...
 
Reimplemented XERCES-C error handlers

These methods forward the error message to our own error handlers below.

void fatalError (const xercesc::SAXParseException &exception)
 
void error (const xercesc::SAXParseException &exception)
 
void warning (const xercesc::SAXParseException &exception)
 

Protected Member Functions

bool equal_ (const XMLCh *a, const XMLCh *b)
 Returns if two xerces strings are equal. More...
 
General MetaInfo handling (for idXML, featureXML, consensusXML)
void writeUserParam_ (const String &tag_name, std::ostream &os, const MetaInfoInterface &meta, UInt indent) const
 Writes the content of MetaInfoInterface to the file. More...
 
String conversion
Int asInt_ (const String &in)
 Conversion of a String to an integer value. More...
 
Int asInt_ (const XMLCh *in)
 Conversion of a Xerces string to an integer value. More...
 
UInt asUInt_ (const String &in)
 Conversion of a String to an unsigned integer value. More...
 
double asDouble_ (const String &in)
 Conversion of a String to a double value. More...
 
float asFloat_ (const String &in)
 Conversion of a String to a float value. More...
 
bool asBool_ (const String &in)
 Conversion of a string to a boolean value. More...
 
DateTime asDateTime_ (String date_string)
 Conversion of a xs:datetime string to a DataTime value. More...
 
Accessing attributes
char * attributeAsString_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a String. More...
 
Int attributeAsInt_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a Int. More...
 
DoubleReal attributeAsDouble_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a DoubleReal. More...
 
DoubleList attributeAsDoubleList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a DoubleList. More...
 
IntList attributeAsIntList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to an IntList. More...
 
StringList attributeAsStringList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to an StringList. More...
 
bool optionalAttributeAsString_ (String &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the String value if the attribute is present. More...
 
bool optionalAttributeAsInt_ (Int &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the Int value if the attribute is present. More...
 
bool optionalAttributeAsUInt_ (UInt &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the UInt value if the attribute is present. More...
 
bool optionalAttributeAsDouble_ (DoubleReal &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the DoubleReal value if the attribute is present. More...
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present. More...
 
bool optionalAttributeAsStringList_ (StringList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the StringList value if the attribute is present. More...
 
bool optionalAttributeAsIntList_ (IntList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the IntList value if the attribute is present. More...
 
char * attributeAsString_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a String. More...
 
Int attributeAsInt_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a Int. More...
 
DoubleReal attributeAsDouble_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a DoubleReal. More...
 
DoubleList attributeAsDoubleList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a DoubleList. More...
 
IntList attributeAsIntList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a IntList. More...
 
StringList attributeAsStringList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a StringList. More...
 
bool optionalAttributeAsString_ (String &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the String value if the attribute is present. More...
 
bool optionalAttributeAsInt_ (Int &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the Int value if the attribute is present. More...
 
bool optionalAttributeAsUInt_ (UInt &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the UInt value if the attribute is present. More...
 
bool optionalAttributeAsDouble_ (DoubleReal &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the DoubleReal value if the attribute is present. More...
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present. More...
 
bool optionalAttributeAsIntList_ (IntList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the IntList value if the attribute is present. More...
 
bool optionalAttributeAsStringList_ (StringList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the StringList value if the attribute is present. More...
 

Protected Attributes

String error_message_
 Error message of the last error. More...
 
String file_
 File name. More...
 
String version_
 Schema version. More...
 
StringManager sm_
 Helper class for string conversion. More...
 
std::vector< Stringopen_tags_
 Stack of open XML tags. More...
 

Private Member Functions

 XMLHandler ()
 Not implemented. More...
 
String expectList_ (const char *str) const
 

controlled vocabulary handling methods

std::vector< std::vector
< String > > 
cv_terms_
 Array of CV term lists (one sublist denotes one term and it's children) More...
 
SignedSize cvStringToEnum_ (const Size section, const String &term, const char *message, const SignedSize result_on_error=0)
 

Detailed Description

Base class for XML handlers.

Member Enumeration Documentation

enum ActionMode

Action to set the current mode (for error messages)

Enumerator
LOAD 

Loading a file.

STORE 

Storing a file.

Constructor & Destructor Documentation

XMLHandler ( const String filename,
const String version 
)

Default constructor.

virtual ~XMLHandler ( )
virtual

Destructor.

XMLHandler ( )
private

Not implemented.

Member Function Documentation

bool asBool_ ( const String in)
inlineprotected

Conversion of a string to a boolean value.

'true', 'false', '1' and '0' are accpeted.
For all other values a parse error is produced.

DateTime asDateTime_ ( String  date_string)
inlineprotected

Conversion of a xs:datetime string to a DataTime value.

References DateTime::set(), String::substr(), and String::trim().

double asDouble_ ( const String in)
inlineprotected

Conversion of a String to a double value.

References String::toDouble().

float asFloat_ ( const String in)
inlineprotected

Conversion of a String to a float value.

References String::toFloat().

Int asInt_ ( const String in)
inlineprotected

Conversion of a String to an integer value.

References String::toInt().

Int asInt_ ( const XMLCh *  in)
inlineprotected

Conversion of a Xerces string to an integer value.

UInt asUInt_ ( const String in)
inlineprotected

Conversion of a String to an unsigned integer value.

References String::toInt().

DoubleReal attributeAsDouble_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to a DoubleReal.

DoubleReal attributeAsDouble_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a DoubleReal.

DoubleList attributeAsDoubleList_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to a DoubleList.

References DoubleList::create(), and String::substr().

DoubleList attributeAsDoubleList_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a DoubleList.

References DoubleList::create(), and String::substr().

Int attributeAsInt_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to a Int.

Int attributeAsInt_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a Int.

IntList attributeAsIntList_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to an IntList.

References IntList::create(), and String::substr().

IntList attributeAsIntList_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a IntList.

References IntList::create(), and String::substr().

char* attributeAsString_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to a String.

char* attributeAsString_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a String.

StringList attributeAsStringList_ ( const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Converts an attribute to an StringList.

References StringList::create(), and String::substr().

StringList attributeAsStringList_ ( const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Converts an attribute to a StringList.

References StringList::create(), and String::substr().

virtual void characters ( const XMLCh *const  chars,
const XMLSize_t  length 
)
virtual
SignedSize cvStringToEnum_ ( const Size  section,
const String term,
const char *  message,
const SignedSize  result_on_error = 0 
)
inlineprotected

Converts term to the index of the term in the cv_terms_ entry section If the term is not found, result_on_error is returned (0 by default)

References OPENMS_PRECONDITION.

virtual void endElement ( const XMLCh *const  uri,
const XMLCh *const  localname,
const XMLCh *const  qname 
)
virtual
bool equal_ ( const XMLCh *  a,
const XMLCh *  b 
)
inlineprotected

Returns if two xerces strings are equal.

void error ( const xercesc::SAXParseException &  exception)
void error ( ActionMode  mode,
const String msg,
UInt  line = 0,
UInt  column = 0 
) const

Error handler for recoverable errors.

String errorString ( )

Returns the last error description.

String expectList_ ( const char *  str) const
inlineprivate
void fatalError ( const xercesc::SAXParseException &  exception)
void fatalError ( ActionMode  mode,
const String msg,
UInt  line = 0,
UInt  column = 0 
) const

Fatal error handler. Throws a ParseError exception.

bool optionalAttributeAsDouble_ ( DoubleReal value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the DoubleReal value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsDouble_ ( DoubleReal value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the DoubleReal value if the attribute is present.

bool optionalAttributeAsDoubleList_ ( DoubleList value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the DoubleList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsDoubleList_ ( DoubleList value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the DoubleList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsInt_ ( Int value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the Int value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsInt_ ( Int value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the Int value if the attribute is present.

bool optionalAttributeAsIntList_ ( IntList value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the IntList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsIntList_ ( IntList value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the IntList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsString_ ( String value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the String value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsString_ ( String value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the String value if the attribute is present.

bool optionalAttributeAsStringList_ ( StringList value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the StringList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsStringList_ ( StringList value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the StringList value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsUInt_ ( UInt value,
const xercesc::Attributes &  a,
const char *  name 
) const
inlineprotected

Assigns the attribute content to the UInt value if the attribute is present.

Returns
if the attribute was present
bool optionalAttributeAsUInt_ ( UInt value,
const xercesc::Attributes &  a,
const XMLCh *  name 
) const
inlineprotected

Assigns the attribute content to the UInt value if the attribute is present.

void reset ( )

Release internal memory used for parsing (call.

virtual void startElement ( const XMLCh *const  uri,
const XMLCh *const  localname,
const XMLCh *const  qname,
const xercesc::Attributes &  attrs 
)
virtual
void warning ( const xercesc::SAXParseException &  exception)
void warning ( ActionMode  mode,
const String msg,
UInt  line = 0,
UInt  column = 0 
) const

Warning handler.

virtual void writeTo ( std::ostream &  )
inlinevirtual
void writeUserParam_ ( const String tag_name,
std::ostream &  os,
const MetaInfoInterface meta,
UInt  indent 
) const
protected

Writes the content of MetaInfoInterface to the file.

Member Data Documentation

std::vector<std::vector<String> > cv_terms_
protected

Array of CV term lists (one sublist denotes one term and it's children)

Referenced by MzDataHandler< MapType >::init_(), MzXMLHandler< MapType >::init_(), and MzDataHandler< MapType >::writeCVS_().

String error_message_
mutableprotected

Error message of the last error.

String file_
protected

File name.

std::vector<String> open_tags_
protected

Stack of open XML tags.

This member is used only in those XML parsers that need this information.

StringManager sm_
protected

Helper class for string conversion.

String version_
protected

Schema version.

Referenced by MzMLHandler< MapType >::MzMLHandler().


OpenMS / TOPP release 1.11.1 Documentation generated on Thu Nov 14 2013 11:19:38 using doxygen 1.8.5