コード例 #1
0
TLogger *TLoggerFactory::create(const QString &key)
{
    QMutexLocker locker(&mutex);
 
    loadPlugins();
    TLogger *logger = 0;
    QString k = key.toLower();
    if (k == TFileLogger().key().toLower()) {
        logger = new TFileLogger;
    } else {
        for (QListIterator<TLoggerInterface *> i(*ssifs); i.hasNext(); ) {
            TLoggerInterface *lif = i.next();
            if (lif->keys().contains(k)) {
                logger = lif->create(k);
                break;
            }
        }
    }
    return logger;
}
コード例 #2
0
/*!
  Creates and returns a TLogger object that matches the given key,
  or returns 0 if no matching logger is found.
*/
TLogger *TLoggerFactory::create(const QString &key)
{
    const QString FILE_KEY = TFileLogger().key().toLower();

    QMutexLocker locker(&mutex);

    loadPlugins();
    TLogger *logger = 0;

    QString k = key.toLower();
    if (k == FILE_KEY) {
        logger = new TFileLogger;
    } else {
        TLoggerInterface *lggif = lggIfMap->value(k);
        if (lggif) {
            logger = lggif->create(key);
        }
    }

    return logger;
}