Task * TextReader::processDbObject(const QString &url) { const U2DataId objDbId = SharedDbUrlUtils::getObjectIdByUrl(url); CHECK(!objDbId.isEmpty(), createDbObjectReadFailTask(url)); const U2DbiRef dbRef = SharedDbUrlUtils::getDbRefFromEntityUrl(url); CHECK(dbRef.isValid(), createDbObjectReadFailTask(url)); const QString objDbName = SharedDbUrlUtils::getDbObjectNameByUrl(url); CHECK(!objDbName.isEmpty(), createDbObjectReadFailTask(url)); QScopedPointer<TextObject> obj(qobject_cast<TextObject *>(GObjectUtils::createObject(dbRef, objDbId, objDbName))); CHECK(!obj.isNull(), createDbObjectReadFailTask(url)); sendMessage(obj->getText().toLocal8Bit()); return NULL; }
ExportCoverageTask::ExportCoverageTask(const U2DbiRef &dbiRef, const U2DataId &assemblyId, const ExportCoverageSettings &settings, TaskFlags flags) : Task(tr("Export assembly coverage per base"), flags), dbiRef(dbiRef), assemblyId(assemblyId), settings(settings), getAssemblyNameTask(NULL), calculateTask(NULL), alreadyProcessed(0) { SAFE_POINT_EXT(dbiRef.isValid(), setError(tr("Invalid database reference")), ); SAFE_POINT_EXT(!assemblyId.isEmpty(), setError(tr("Invalid assembly ID")), ); SAFE_POINT_EXT(!settings.url.isEmpty(), setError(tr("Invalid destination url")), ); alphabetChars << 'A' << 'C' << 'G' << 'T'; }
Document* DocumentFormat::loadDocument(IOAdapterFactory* iof, const GUrl& url, const QVariantMap& hints, U2OpStatus& os) { QScopedPointer<IOAdapter> io(iof->createIOAdapter()); if (!io->open(url, IOAdapterMode_Read)) { os.setError(L10N::errorOpeningFileRead(url)); return NULL; } Document* res = NULL; U2DbiRef dbiRef = fetchDbiRef(hints, os); CHECK_OP(os, NULL); if (dbiRef.isValid()) { DbiConnection con(dbiRef, os); CHECK_OP(os, NULL); Q_UNUSED(con); res = loadDocument(io.data(), dbiRef, hints, os); CHECK_OP(os, NULL); } else { res = loadDocument(io.data(), U2DbiRef(), hints, os); } return res; }
foreach (const QPointer<Document> &doc, docs) { if (!doc.isNull()) { filterDocument(doc.data()); } if (stateInfo.isCoR()) { break; } } } void FeatureKeyFilterTask::filterDocument(Document *doc) { SAFE_POINT_EXT(NULL != doc, stateInfo.setError(L10N::nullPointerError("document")), ); CHECK(doc->isLoaded(), ); const U2DbiRef dbiRef = doc->getDbiRef(); SAFE_POINT_EXT(dbiRef.isValid(), setError(tr("DbiRef is invalid")), ); if (!dbiRef2AnnotationTables.contains(dbiRef)) { DbiConnection connection(dbiRef, stateInfo); CHECK_OP(stateInfo, ); SAFE_POINT_EXT(NULL != connection.dbi, stateInfo.setError(L10N::nullPointerError("Database connection")), ); U2FeatureDbi *featureDbi = connection.dbi->getFeatureDbi(); SAFE_POINT_EXT(NULL != featureDbi, stateInfo.setError(L10N::nullPointerError("Feature DBI")), ); dbiRef2AnnotationTables[dbiRef] = featureDbi->getAnnotationTablesByFeatureKey(settings.tokensToShow, stateInfo); SAFE_POINT_OP(stateInfo, ); } const QMap<U2DataId, QStringList> &annNames = dbiRef2AnnotationTables[dbiRef]; const int foundObjectsNumber = annNames.size(); const int totalDocObjectsNumber = doc->getObjects().size(); foreach (const U2DataId &annTableId, annNames.keys()) {