author | mickeyl <mickeyl> | 2003-12-08 18:12:34 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-12-08 18:12:34 (UTC) |
commit | bbc55b1790e93973c0fdf7ad5f758f6ff4da2269 (patch) (side-by-side diff) | |
tree | 1ed235702c8c5b62ca31e11795e3a83194f97987 /libopie2/opienet/omanufacturerdb.cpp | |
parent | ac49d8a09fe739ed451c632e154a409f142cefcd (diff) | |
download | opie-bbc55b1790e93973c0fdf7ad5f758f6ff4da2269.zip opie-bbc55b1790e93973c0fdf7ad5f758f6ff4da2269.tar.gz opie-bbc55b1790e93973c0fdf7ad5f758f6ff4da2269.tar.bz2 |
use a slightly smaller manufacturerdb format, that saves ~100KB and
improves parsing speed. Even better would be .gz compressed QDataStream though...
Diffstat (limited to 'libopie2/opienet/omanufacturerdb.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opienet/omanufacturerdb.cpp | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/libopie2/opienet/omanufacturerdb.cpp b/libopie2/opienet/omanufacturerdb.cpp index bcce11f..006ae72 100644 --- a/libopie2/opienet/omanufacturerdb.cpp +++ b/libopie2/opienet/omanufacturerdb.cpp @@ -37,95 +37,76 @@ #include <qstring.h> #include <qfile.h> #include <qtextstream.h> OManufacturerDB* OManufacturerDB::_instance = 0; OManufacturerDB* OManufacturerDB::instance() { if ( !OManufacturerDB::_instance ) { odebug << "OManufacturerDB::instance(): creating OManufacturerDB..." << oendl; _instance = new OManufacturerDB(); } return _instance; } OManufacturerDB::OManufacturerDB() { QString filename( "/etc/manufacturers" ); odebug << "OManufacturerDB: trying to read " << filename << oendl; if ( !QFile::exists( filename ) ) { filename = "/opt/QtPalmtop/etc/manufacturers"; odebug << "OManufacturerDB: trying to read " << filename << oendl; if ( !QFile::exists( filename ) ) { filename = "/usr/share/wellenreiter/manufacturers"; odebug << "OManufacturerDB: trying to read " << filename << oendl; } } QFile file( filename ); bool hasFile = file.open( IO_ReadOnly ); if (!hasFile) { owarn << "OManufacturerDB: no valid manufacturer list found." << oendl; } else { odebug << "OManufacturerDB: found manufacturer list in " << filename << oendl; QTextStream s( &file ); QString addr; QString manu; QString extManu; while (!s.atEnd()) { s >> addr; - if ( !addr ) // read nothing!? - { - continue; - } - else - if ( addr[0] == '#' ) - { - continue; - } - s.skipWhiteSpace(); s >> manu; - s.skipWhiteSpace(); s >> extManu; - if ( extManu[0] == '#' ) // we have an extended manufacturer - { - s.skipWhiteSpace(); - extManu = s.readLine(); - odebug << "OManufacturerDB: read " << extManu << " as extended manufacturer string" << oendl; - manufacturersExt.insert( addr, extManu ); - } - else - s.readLine(); - odebug << "OManufacturerDB: read tuple " << addr << ", " << manu << oendl; + manufacturers.insert( addr, manu ); + manufacturersExt.insert( addr, extManu ); + odebug << "OmanufacturerDB: parse '" << addr << "' as '" << manu << "' (" << extManu << ")" << oendl; } } - } OManufacturerDB::~OManufacturerDB() { } const QString& OManufacturerDB::lookup( const QString& macaddr ) const { return manufacturers[macaddr.upper().left(8)]; } const QString& OManufacturerDB::lookupExt( const QString& macaddr ) const { QMap<QString,QString>::ConstIterator it = manufacturersExt.find( macaddr.upper().left(8) ); return it == manufacturersExt.end() ? lookup( macaddr ) : *it; } |