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 2135 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 2147 of file utils.h.


Constructor & Destructor Documentation

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

Constructor with a given stream.

Definition at line 2211 of file utils.h.

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

Default constructor.

Definition at line 2218 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 2283 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 2274 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 2266 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 2254 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 2243 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 2234 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 2226 of file utils.h.

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

Returns the number of objects that have been serialized.

Definition at line 2476 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 2296 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 2180 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 2468 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 2208 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 2198 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 2472 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 2187 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 2204 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 2194 of file utils.h.

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

Updating the output stream.

Definition at line 2139 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 2444 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 578 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 2428 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 2421 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 2414 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 2405 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 2394 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 2380 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 2372 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 2364 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 2352 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 2343 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 2334 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 2325 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 2318 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 2311 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 606 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 636 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 2304 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 2165 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 2172 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 2155 of file utils.h.


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

Generated on 16 Apr 2010 for frePPLe by  doxygen 1.6.1