File indexing completed on 2024-05-05 17:33:22

0001 /*
0002  *   SPDX-FileCopyrightText: 2016 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005  */
0006 
0007 #include "StoredResultsStream.h"
0008 
0009 StoredResultsStream::StoredResultsStream(const QSet<ResultsStream *> &streams)
0010     : AggregatedResultsStream(streams)
0011 {
0012     connect(this, &ResultsStream::resourcesFound, this, [this](const QVector<AbstractResource *> &resources) {
0013         for (auto r : resources)
0014             connect(r, &QObject::destroyed, this, [this, r]() {
0015                 m_resources.removeAll(r);
0016             });
0017         m_resources += resources;
0018     });
0019 
0020     connect(this, &AggregatedResultsStream::finished, this, [this]() {
0021         Q_EMIT finishedResources(m_resources);
0022     });
0023 }
0024 
0025 QVector<AbstractResource *> StoredResultsStream::resources() const
0026 {
0027     return m_resources;
0028 }