Hauptseite   Liste aller Namensbereiche   Klassenhierarchie   Alphabetische Liste   Übersicht   Auflistung der Dateien   Elemente eines Namensbereiches   Datenstruktur-Elemente   Datei-Elemente  

SflexPlainTextOutput Klassenreferenz

Diese Klasse kümmert sich um die Transformation von XML nach Plain-Text. Mehr...

#include <SflexPlainTextOutput.hpp>

Abgeleitet von SflexXslOutput.

Klassendiagramm für SflexPlainTextOutput:

Inheritance graph
[Legende]
Zusammengehörigkeiten von SflexPlainTextOutput:

Collaboration graph
[Legende]
Aufstellung aller Elemente

Öffentliche Datenelemente

 SflexPlainTextOutput ()
virtual ~SflexPlainTextOutput ()
virtual void setStyleParam (std::string key, std::string value)
 Setzt Parameter im Stylesheet. Mehr...

virtual void work (std::string xmlFileName, std::string xslFileName)
 Transformiert eine Datei. Mehr...

virtual const std::string getResult () const
 Liefert das Ergebnis des jeweiligen Arbeiters. Mehr...

virtual const std::string getContentType () const
 Liefert den Content-Type des Ausgabe-Objektes. Mehr...

virtual bool isSuccess () const
 Liefert den Status des Arbeiters. Mehr...


Private Attribute

bool isSuccess_
 Der Status des Objektes. Mehr...

std::ostringstream resultStream_
 Das Resultat. Mehr...

SflexXsltsflexXslt_
 Der XSL-Transformer. Mehr...

std::map< std::string, std::string > styleParamList_
 der Container mit den Stylesheet-Parametern. Mehr...


Ausführliche Beschreibung

Diese Klasse kümmert sich um die Transformation von XML nach Plain-Text.


Beschreibung der Konstruktoren und Destruktoren

SflexPlainTextOutput::SflexPlainTextOutput  
 

00026     : isSuccess_( false ),
00027       sflexXslt_( 0 )
00028 {
00029 
00030 }

SflexPlainTextOutput::~SflexPlainTextOutput   [virtual]
 

00035 {
00036     delete sflexXslt_;
00037 }


Dokumentation der Elementfunktionen

const std::string SflexPlainTextOutput::getContentType   const [virtual]
 

Liefert den Content-Type des Ausgabe-Objektes.

Rückgabe:
den Content-Type

Implementiert SflexXslOutput.

00104 {
00105     return "text/plain";
00106 }

const std::string SflexPlainTextOutput::getResult   const [virtual]
 

Liefert das Ergebnis des jeweiligen Arbeiters.

Im Falle eines Fehlers liefert diese Methode auch die Fehlermeldung.

Rückgabe:
das Ergebnis.

Implementiert SflexWorker.

00095 {
00096     return resultStream_.str();
00097 
00098 }

bool SflexPlainTextOutput::isSuccess   const [virtual]
 

Liefert den Status des Arbeiters.

Rückgabe:
der Status

Implementiert SflexWorker.

00112 {
00113     return isSuccess_;
00114 }

void SflexPlainTextOutput::setStyleParam std::string    key,
std::string    value
[virtual]
 

Setzt Parameter im Stylesheet.

Parameter:
key  der Name des Parameters
value  der Inhalt des Paramters

Implementiert SflexXslOutput.

00044 {
00045     styleParamList_[ name ] = value;
00046     return;
00047 }

void SflexPlainTextOutput::work std::string    xmlFileName,
std::string    xslFileName
[virtual]
 

Transformiert eine Datei.

Parameter:
xmlFileName  der Pfad zur XML-Datei
xslFileName  der Pfad zur XSLT-Datei

Implementiert SflexXslOutput.

00054 {
00055     using sflexhelper::readFile;
00056     using sflexhelper::stripWhiteSpace;
00057     using std::string;
00058     
00059     string xml  = readFile( xmlFileName, resultStream_ );
00060     string xslt = readFile( xslFileName, resultStream_ );
00061     
00062     bool isEmpty = ( xml.empty() || xslt.empty() );
00063     if ( isEmpty ) {
00064         resultStream_ << "Plain Text Output: kein Inhalt!\n";
00065         return;
00066     }
00067 
00068     xml = stripWhiteSpace( xml );
00069 
00070     SflexWorkerFactory *wF = SflexWorkerFactory::getFactory();
00071     sflexXslt_ = wF->makeXslt();
00072     if ( !sflexXslt_ ) {
00073         resultStream_ << wF->getError();
00074         return;
00075     }
00076 
00077     sflexXslt_->work( styleParamList_,
00078                       xml,
00079                       xslt );
00080     if ( !sflexXslt_->isSuccess() ) {
00081         resultStream_ << sflexXslt_->getResult();
00082         return;
00083     }
00084 
00085     resultStream_ << sflexXslt_->getResult();
00086     isSuccess_ = true;
00087 
00088     return;
00089 }


Dokumentation der Datenelemente

bool SflexPlainTextOutput::isSuccess_ [private]
 

Der Status des Objektes.

std::ostringstream SflexPlainTextOutput::resultStream_ [private]
 

Das Resultat.

SflexXslt* SflexPlainTextOutput::sflexXslt_ [private]
 

Der XSL-Transformer.

std::map< std::string, std::string > SflexPlainTextOutput::styleParamList_ [private]
 

der Container mit den Stylesheet-Parametern.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:
Erzeugt am Fri Apr 12 10:57:04 2002 für SfleX von doxygen1.2.14 geschrieben von Dimitri van Heesch, © 1997-2002