frepple::utils::XMLOutput Class Reference

Base class for writing XML formatted data to an output stream. More...

#include <utils.h>

Inheritance diagram for frepple::utils::XMLOutput:
frepple::utils::XMLOutputFile frepple::utils::XMLOutputString

List of all members.

Public Types

typedef unsigned short content_type

Public Member Functions

void BeginObject (const Keyword &t, const Keyword &attr1, unsigned long val1, const Keyword &attr2, const string &val2)
void BeginObject (const Keyword &t, const Keyword &attr1, const long val1)
void BeginObject (const Keyword &t, const string &atts)
void BeginObject (const Keyword &t, const Keyword &attr1, const string &val1, const Keyword &attr2, const string &val2, const Keyword &attr3, const string &val3)
void BeginObject (const Keyword &t, const Keyword &attr1, const string &val1, const Keyword &attr2, const string &val2)
void BeginObject (const Keyword &t, const Keyword &attr1, const string &val1)
void BeginObject (const Keyword &t)
unsigned long countObjects () const
void EndObject (const Keyword &t)
content_type getContentType () const
ObjectgetCurrentObject () const
string getHeaderAtts () const
string getHeaderStart () const
ObjectgetPreviousObject () const
void setContentType (content_type c)
void setHeaderAtts (const string &s)
void setHeaderStart (const string &s)
void writeElement (const Keyword &t, const Object &o, mode m=DEFAULT)
void writeElement (const Keyword &, const Object *, mode=DEFAULT)
void writeElement (const Keyword &t, const DateRange &d)
void writeElement (const Keyword &t, const Date d)
void writeElement (const Keyword &t, const TimePeriod d)
void writeElement (const Keyword &t, const char *val)
void writeElement (const Keyword &u, const Keyword &t1, unsigned long val1, const Keyword &t2, const string &val2)
void writeElement (const Keyword &u, const Keyword &t1, const string &val1, const Keyword &t2, const string &val2)
void writeElement (const Keyword &u, const Keyword &t, const Date &val)
void writeElement (const Keyword &u, const Keyword &t, const long val)
void writeElement (const Keyword &u, const Keyword &t, const string &val)
void writeElement (const Keyword &t, const string &val)
void writeElement (const Keyword &t, const bool val)
void writeElement (const Keyword &t, const double val)
void writeElement (const Keyword &t, const int val)
void writeElement (const Keyword &t, const long unsigned int val)
void writeElementWithHeader (const Keyword &tag, const Object *object)
void writeHeader (const Keyword &tag)
void writeString (const string &c)
 XMLOutput ()
 XMLOutput (ostream &os)

Static Public Attributes

static const content_type PLAN = 2
static const content_type PLANDETAIL = 4
static const content_type STANDARD = 1

Protected Member Functions

void setOutput (ostream &o)

Detailed Description

Base class for writing XML formatted data to an output stream.

Subclasses implement writing to specific stream types, such as files and strings.

Definition at line 1939 of file utils.h.


Member Typedef Documentation

This type is used to define different types of output.

See also:
STANDARD
PLAN
PLANDETAIL

Definition at line 1951 of file utils.h.


Constructor & Destructor Documentation

frepple::utils::XMLOutput::XMLOutput ( ostream &  os  )  [inline]

Constructor with a given stream.

Definition at line 2015 of file utils.h.

frepple::utils::XMLOutput::XMLOutput (  )  [inline]

Default constructor.

Definition at line 2022 of file utils.h.


Member Function Documentation

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const Keyword attr1,
unsigned long  val1,
const Keyword attr2,
const string &  val2 
) [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T TAG_T1="val1" TAG_T2="val2">

Definition at line 2087 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const Keyword attr1,
const long  val1 
) [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T TAG_U="long">

Definition at line 2078 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const string &  atts 
) [inline]

Start writing a new object. This method will open a new XML-tag.

Definition at line 2070 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const Keyword attr1,
const string &  val1,
const Keyword attr2,
const string &  val2,
const Keyword attr3,
const string &  val3 
) [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T TAG_U="val1" TAG_V="val2" TAG_W="val3">

Definition at line 2058 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const Keyword attr1,
const string &  val1,
const Keyword attr2,
const string &  val2 
) [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T TAG_T1="val1" TAG_T2="val2">

Definition at line 2047 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t,
const Keyword attr1,
const string &  val1 
) [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T TAG_U="val1">

Definition at line 2038 of file utils.h.

void frepple::utils::XMLOutput::BeginObject ( const Keyword t  )  [inline]

Start writing a new object. This method will open a new XML-tag.
Output: <TAG_T>

Definition at line 2030 of file utils.h.

unsigned long frepple::utils::XMLOutput::countObjects (  )  const [inline]

Returns the number of objects that have been serialized.

Definition at line 2280 of file utils.h.

void frepple::utils::XMLOutput::EndObject ( const Keyword t  )  [inline]

Write the closing tag of this object and decrease the indentation level.
Output: </TAG_T>

Definition at line 2100 of file utils.h.

content_type frepple::utils::XMLOutput::getContentType (  )  const [inline]

Returns which type of export is requested. Constants have been defined for each type.

See also:
STANDARD
PLAN
PLANDETAIL

Definition at line 1984 of file utils.h.

Object* frepple::utils::XMLOutput::getCurrentObject (  )  const [inline]

Returns a pointer to the object that is currently being saved.

Definition at line 2272 of file utils.h.

string frepple::utils::XMLOutput::getHeaderAtts (  )  const [inline]

Returns the attributes that are written for the root element of each XML document.

Definition at line 2012 of file utils.h.

string frepple::utils::XMLOutput::getHeaderStart (  )  const [inline]

Returns the string that is printed as the first line of each XML document.

Definition at line 2002 of file utils.h.

Object* frepple::utils::XMLOutput::getPreviousObject (  )  const [inline]

Returns a pointer to the parent of the object that is being saved.

Definition at line 2276 of file utils.h.

void frepple::utils::XMLOutput::setContentType ( content_type  c  )  [inline]

Specify the type of export.

See also:
STANDARD
PLAN
PLANDETAIL

Definition at line 1991 of file utils.h.

void frepple::utils::XMLOutput::setHeaderAtts ( const string &  s  )  [inline]

Updates the attributes that are written for the root element of each XML document.
The default value is an empty string.

Definition at line 2008 of file utils.h.

void frepple::utils::XMLOutput::setHeaderStart ( const string &  s  )  [inline]

Updates the string that is printed as the first line of each XML document.
The default value is: <?xml version="1.0" encoding="UTF-8"?>

Definition at line 1998 of file utils.h.

void frepple::utils::XMLOutput::setOutput ( ostream &  o  )  [inline, protected]

Updating the output stream.

Definition at line 1943 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const Object o,
mode  m = DEFAULT 
) [inline]
See also:
writeElement(const Keyword&, const Object*, mode)

Definition at line 2248 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword tag,
const Object object,
mode  m = DEFAULT 
)

This method writes a serializable object. It maintains a STL-map of all objects that have been saved already. For objects that have already been saved earlier, the method will instruct the serializable object to write only a reference, rather than the complete object. You should call this method for all objects in your xml document, except for the root object.

See also:
writeElementWithHeader(const Keyword&, Object*)

Definition at line 571 of file xmlparser.cpp.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const DateRange d 
) [inline]

Writes an daterange element.
Output: <TAG_T>d</TAG_T>

Definition at line 2232 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const Date  d 
) [inline]

Writes an date element.
Output: <TAG_T>d</TAG_T> />

Definition at line 2225 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const TimePeriod  d 
) [inline]

Writes an timeperiod element.
Output: <TAG_T>d</TAG_T> />

Definition at line 2218 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const char *  val 
) [inline]

Writes a C-type character string.
Output: <TAG_T>val</TAG_T>

Definition at line 2209 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword u,
const Keyword t1,
unsigned long  val1,
const Keyword t2,
const string &  val2 
) [inline]

Writes an element with a string and a long attribute.
Output: <TAG_U TAG_T1="val1" TAG_T2="val2"/>

Definition at line 2198 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword u,
const Keyword t1,
const string &  val1,
const Keyword t2,
const string &  val2 
) [inline]

Writes an element with 2 string attributes.
Output: <TAG_U TAG_T1="val1" TAG_T2="val2"/>

Definition at line 2184 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword u,
const Keyword t,
const Date val 
) [inline]

Writes an element with a date attribute.
Output: <TAG_U TAG_T="val"/>

Definition at line 2176 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword u,
const Keyword t,
const long  val 
) [inline]

Writes an element with a long attribute.
Output: <TAG_U TAG_T="val"/>

Definition at line 2168 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword u,
const Keyword t,
const string &  val 
) [inline]

Writes an element with a string attribute.
Output: <TAG_U TAG_T="string"/>

Definition at line 2156 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const string &  val 
) [inline]

Write a string value enclosed opening and closing tags. Special characters (i.e. & < > ' ) are appropriately escaped.
Output: <TAG_T>val</TAG_T>

Definition at line 2147 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const bool  val 
) [inline]

Write a boolean value enclosed opening and closing tags. The boolean is written out as the string 'true' or 'false'.
Output: <TAG_T>true</TAG_T>

Definition at line 2138 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const double  val 
) [inline]

Write a double value enclosed opening and closing tags.
Output: <TAG_T>double</TAG_T>

Definition at line 2129 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const int  val 
) [inline]

Write an integer value enclosed opening and closing tags.
Output: <TAG_T>integer</TAG_T>

Definition at line 2122 of file utils.h.

void frepple::utils::XMLOutput::writeElement ( const Keyword t,
const long unsigned int  val 
) [inline]

Write an unsigned long value enclosed opening and closing tags.
Output: <TAG_T>uint</TAG_T>

Definition at line 2115 of file utils.h.

void frepple::utils::XMLOutput::writeElementWithHeader ( const Keyword tag,
const Object object 
)

This method writes a serializable object with a complete XML compliant header.
You should call this method for the root object of your xml document, and writeElement for all objects nested in it.

See also:
writeElement(const Keyword&, Object*)
writeHeader
Exceptions:
RuntimeException Generated when multiple root elements are available for the output document.

Definition at line 599 of file xmlparser.cpp.

void frepple::utils::XMLOutput::writeHeader ( const Keyword tag  ) 

This method writes the opening tag for an XML output.
You should call this method or writeElementWithHeader() when writing the first element of an xml document.

See also:
writeElementWithHeader
Exceptions:
RuntimeException Generated when multiple root elements are available for the output document.

Definition at line 629 of file xmlparser.cpp.

void frepple::utils::XMLOutput::writeString ( const string &  c  )  [inline]

Write the string to the output. No XML-tags are added, so this method is used for passing text straight into the output file.

Definition at line 2108 of file utils.h.


Member Data Documentation

Constant to mark an export of the standard information plus the plan information. In this format, every entity is saved with the details on how it is used in the plan.
E.g. a resource will be saved with a reference to all its loadplans. E.g. an operation will be saved with all its operationplans.

See also:
STANDARD
PLANDETAIL

Definition at line 1969 of file utils.h.

Constant to mark an export of the lowest level of plan information. In addition to the plan information pegging information is now saved.

See also:
STANDARD
PLAN

Definition at line 1976 of file utils.h.

Constant used to mark standard export for the export. The standard export saves just enough information to persist the full state of the model as brief as possible.

See also:
PLAN
PLANDETAIL

Definition at line 1959 of file utils.h.


The documentation for this class was generated from the following files:

Generated on 25 Sep 2009 for frePPLe by  doxygen 1.6.1