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

psfa::UnitParser Klassenreferenz

Parst Einheiten. Mehr...

#include <psfa/UnitParser.hpp>

Aufstellung aller Elemente

Öffentliche Methoden

 UnitParser (const std::string pool)
 Initialisiert ein UnitParser Objekt.

 ~UnitParser ()
void parse (const std::vector< std::string > &files, std::vector< IndexData_SP > &data, std::vector< std::string > &errorFiles)
 Parst Einheiten.


Private Attribute

std::string pool_
 der Name des Pools


Ausführliche Beschreibung

Parst Einheiten.

Definiert in Zeile 34 der Datei UnitParser.hpp.


Beschreibung der Konstruktoren und Destruktoren

psfa::UnitParser::UnitParser const std::string  pool  )  [explicit]
 

Initialisiert ein UnitParser Objekt.

Parameter:
pool der Name des Pools, zu dem die Einheiten gehören.

Definiert in Zeile 26 der Datei UnitParser.cpp.

00027   : pool_( pool )
00028 {
00029   
00030 }

psfa::UnitParser::~UnitParser  ) 
 

Definiert in Zeile 34 der Datei UnitParser.cpp.

00035 {
00036    
00037 }


Dokumentation der Elementfunktionen

void psfa::UnitParser::parse const std::vector< std::string > &  files,
std::vector< IndexData_SP > &  data,
std::vector< std::string > &  errorFiles
 

Parst Einheiten.

Die Daten der Indizierung sind anschließend in dem Ergebnis-Vektor. Falls beim Parsen Fehler entdeckt werden, stehen die Namen der fehlerhaften Dateien in dem entsprechenden Container. Die Indizierungsdaten, die möglicherweise schon in dem Ergebnis-Vektor stehen, werden nicht gelöscht. Sie müssen später wieder entfernt werden.

Parameter:
files der Container mit Namen der XML-Dateien
data der Container für die Ergebnisse der Indiezierung
errorFiles der Container für die fehlerhaften Dateien

Definiert in Zeile 41 der Datei UnitParser.cpp.

Benutzt psfa::Config::getConfigValue(), pool_, psfa::UnitSax2ContentHandler::setFileName() und psfa::sVec.

Wird benutzt von psfa::DbWriteDriverMySql::index().

00044 {
00045   using std::string;
00046   typedef std::vector< string > sVec;
00047 
00048   xercesc::SAX2XMLReader* parser = Sax2Parser::getSax2Parser();
00049   UnitSax2ContentHandler cH( pool_, data );
00050   UnitSax2ErrorHandler eH;
00051   parser->setContentHandler( &cH );
00052   parser->setErrorHandler(   &eH );
00053 
00054   Config* conf = Config::getConfig();
00055   string path = conf->getConfigValue( pool_, "root" );
00056   
00057   int error = 0;
00058   sVec::const_iterator i;
00059   sVec::const_iterator iEnd = files.end();
00060   for( i = files.begin(); i != iEnd; ++i ) {
00061     string filePath = path + "/" + *i;
00062     cH.setFileName( *i );
00063     parser->parse( filePath.c_str() );
00064     error = parser->getErrorCount();
00065     if( error > 0 ) {
00066       errorFiles.push_back( *i );
00067     }
00068   }
00069   return;
00070 }


Dokumentation der Datenelemente

std::string psfa::UnitParser::pool_ [private]
 

der Name des Pools

Definiert in Zeile 67 der Datei UnitParser.hpp.

Wird benutzt von parse().


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:
Erzeugt am Mon Jul 12 11:45:09 2004 für PSFA von doxygen 1.3.4