Example #1
0
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;
}
Example #2
0
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';
}
Example #3
0
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;
}
Example #4
0
void FeatureKeyFilterTask::run() {
    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();